1)通常通り
http://○○.com/img_directory/○○.jpg
とアクセスして表示する
2)img_directoryのパーミッションを700にして外部からアクセスできないようにして
http://○○.com/gate.php?○○.jpg
という形式でgate.php(GD利用)に出力させて表示する
上記二つの場合で、負荷は変わるものなのでしょうか。(例えば、表示が遅くなったり、あるサイズ以上の画像を表示できなかったり)
また、phpを介して画像を表示する際に気をつけることはありますか?
phpを介する場合、phpが動いているプロセス(でよろしいでしょうか?)のメモリが使われるので、php.iniのmemory_limitの影響も考えなければならないのだろうかと思っています。
【質問の背景】
レンタルサーバーで同窓会のサイトを運営していますが、プライバシーの問題からアクセス制限を掛けています。(現在はBasic認証)
phpを利用してセッション管理によるアクセス制限にチャレンジしたいと思っています。
負荷は高くなると思います。
(画像の枚数が少ないのであればキャッシュするなどの工夫をしたほうが良いでしょうね)
単に認証のためにPHPを仕込みたいということであれば
// 画像をあらわすヘッダ出力 header("Content-type: image/jpeg"); /** * ここに認証の仕組みをいれておく */ // ファイルの中身を読んでそのままバイナリ出力 readfile("image_directory/xxx.jpg");
ってな感じでGD使わずともいけるはず。
なんと、GDは必須ではないんですか!
独学は勘違いが多いから困りものですね。
やってみたら出来ました。パイプ出力というのですね。ありがとうございます。
またキャッシュの助言もありがとうございました。勉強します。