わかりました、これが可能かどうか疑問に思い始めています。私は htaccess のチュートリアルと例に注いでいますが、正しく機能していないようです。
友人の Web サイトのディレクトリで実行される動的画像を作成するスクリプトがあります。/ にアクセスできますが、実際に使用しているディレクトリは /mydir/ にあります。画像を表示するために、PHP 経由で png に出力されます。要求されたファイル名を取得して PHP スクリプトを実行するために、次のRewriteRuleセットアップがあります。各ファイル名は、display.php スクリプトで使用されるシリアル化されたオブジェクトを含む個別のファイルを表します
RewriteRule ^(.*)\.jpg$ display.php?file=$1
その部分は正常に機能していますが、誰かが存在しないファイルを要求すると、スクリプトが呼び出されても使用するオブジェクトがないため、PHP エラーがスローされます。
私が今やろうとしていて、完全に失敗しているのは、ファイルが ./Cache/ ディレクトリに存在するかどうかを確認し、通常どおりスクリプトを実行し、そうでない場合はサーバーが標準の 404 をスローすることです。
私は次のようなことを試しました
RewriteCond %{REQUEST_URI} ^(.*)\.jpg$
RewriteCond %{DOCUMENT ROOT}/img/Cache/%1.jpg -f
これを処理するための適切な変数と正規表現が思いつかないので、皆さんに助けを求めています。最大の問題は、これらの各変数に実際に何が入っているかがわからないため、どこが間違っているかがわかります。私はある種の var_dump() を殺します。