[PHP-users 31208] Re: IEでリダイレクト先の画像がBMPでしか保存できない

banban @ landhere.info banban @ landhere.info
2007年 1月 4日 (木) 20:48:22 JST


当初の質問は解決できませんでしたが、カスタムエラー
レスポンスをうまく使うことで、目的は達成できました。

画像ファイルのディレクトリに、次のディレクティブを
適用します。(.htaccess 使用)

ErrorDocument 404 /image.php

これで、イメージディレクトリに実ファイルが無いとき
は、/image.php が呼ばれます。

ここで、画像のファイル名を以下のルールに従わせます。

image_w800_h600.jpg

w800 で幅800ピクセル、h800で高さ800ピクセルのサムネ
イルを表します。元のファイルは、image.jpg で存在して
いるものとします。image は任意の名前が利用できます。

実ファイルが無くて、image.php が実行されたとき以下の
処理をします。

$_SERVER['SCRIPT_URL'] から preg_match などで、パラメー
タを取り出します。そのパラメータを使って、サムネイルを
作成し、画像フォルダに出力します。同時に結果をブラウザ
に戻します。

これで、次回から同じサイズのサムネイルをリクエストさ
れても実ファイルがあるので、レスポンスはまったく
落ちないことになります。

一応、ErrorDocument 利用でうまく行きましたが、もしか
したら、mod_rewrite だけでも出来そうな感じがしてき
ました。後で、挑戦してみようと思います。

いろいろと、ありがとうございました。

--
 van


PHP-users メーリングリストの案内