サイトの動的サムネイル生成機能に取り組んでおり、mod_rewrite 機能を使用して、既に生成された画像をすばやくキャッシュしています。
次の書き換え条件でこれを行います。
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-s
RewriteRule ^/thumber/images/([0-9]+)_([0-9]+)_(.+)$ /thumber/thumbnail.cfm?src=$3&w=$1&h=$2 [PT,L,QSA]
最初の行は、要求された画像がまだ存在しない場合にのみ、書き換えルールがスクリプト ページに転送されるようにします。
これは Apache 2 では正常に動作しますが、ISAPI Rewrite 3 Lite を使用して同じルールを IIS サーバーに移動すると、サムネイルが既に生成されている最初のリダイレクトの後でも、常にファイルが存在しないかのように動作します。
つまり、何らかの理由で!-sフラグがまったく機能していないように見えます。!-fも試してみましたが、変化はありません。
おそらく、このバージョンの ISAPI Rewrite は、何らかのキャッシュ情報を使用して、ファイルが存在するかどうかを判断しているのではないかと考えています。
それ以外は、Apache では機能するのに ISAPI では機能しない理由がわかりません。
助けてください!
ありがとう