・画像ファイルの要求を受け付ける
・ファイル名は0001.jpgなどの通番
・ファイルがすでにあれば、それを返す
・無ければ、サーバ側でプログラムを実行し生成した上で返す
以下は例です。
クライアントが「http://www.example.com/photo/0001.jpg」を要求
サーバに0001.jpgが既存するので、そのまま返す
クライアントが「http://www.example.com/photo/0005.jpg」を要求
サーバに0005.jpgがないので、AAAA.plを実行し生成させ、
できたファイルを返す
AAAA.plのサンプルも含め、このような一連の処理を行う方法を知りたいのです。実際に画像を生成するプログラムは、すでにあります。Perl希望です。
ズバリのご回答のみ、ポイントをお送りします。以上、よろしくお願いいたします。
http://httpd.apache.org/docs/2.0/ja/howto/htaccess.html
Apache ���塼�ȥꥢ��: .htaccess �ե����� - Apache HTTP ������
スクリプト名は、AAAA.pl とせずに、photo として、ルートディレクトリにおきます。
htaccess の設定などで、photo を CGI として実行されるようにします。
この設定で、
http://www.example.com/photo/xxxx.jpg
にアクセスすると、photo が実行され /xxxx.jpg が PATH_INFO として渡されるので、これを見て
xxxx.jpg があれば、それを読み出し表示する。
xxxx.jpg がなければ生成して表示する。
とします。
htaccess の設定がわからなければ、以下のようにしてはどうでしょう。
画像のURLを
http://www.example.com/photo/xxxx.jpg
ではなく、
http://www.example.com/photo.cgi/xxxx.jpg
とします。
これで、photo.cgi が実行されて /xxxx.jpg が PATH_INFO として渡されます。
photo.cgi を以下のようにしてテストしてみればよくわかると思います。
---
#!/usr/bin/perl
print ”Content-type: text/html¥n¥n”;
print $ENV{PATH_INFO};
---
画像ファイル名を受け取った後の処理は、前述のとおりです。
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/pe_kj14.htm
CGI-Perl 基礎実地編 - 実習14 (画像レスポンス、画像出力、画像表示) - SAK Streets
ちなみに画像出力の方法はこちらにありました。
ご存知だとは思いますが参考まで。
ご回答、ありがとうございます。簡単にできそうですね。すみませんが、htaccess関連の設定に不慣れなのです。もう少し、簡易にかつズバリと設定などをご教授いただけると幸いです。熟読する時間がないものでして... よろしくお願いいたします。