IIS 7.5 で実行されている mvc4 アプリケーションを使用していますが、設定した書き換えルールに問題があります。以下は、web.config からの私のセクションです。
<rewrite>
<rules>
<rule name="RewriteImage">
<match url="/myassets/([_0-9a-z-]+)/images/category/([_0-9]+)-([_0-9a-z-]+)-([0-9]+)" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="/myassets/{R:1}/images/category/cat_{R:2}_{R:4}_{R:3}.jpg" />
</rule>
</rules>
</rewrite>
上記のURLでやりたいことは、画像を別のパスに書き換えます。
次の URL を提供し、https://localhost/myassets/en-uk/images/category/123456-5x10-1_my+image+description.jpg
それが書き換えられることを期待してhttps://localhost/myassets/en-uk/images/category/cat_123456_1_5x10.jpg
いますが、そうではありません。
IIS でテストすると、すべて正常に動作しますが、ブラウザーを介してルールが適用されることはありません。
これは私が持っている唯一のルールです。大文字の URL を小文字の URL にリダイレクトする単純なリダイレクト ルールを試してみましたが、これは正常に機能します。
web.config で気づいたことの 1 つは、最初の書き換えタグの下に、system.webserver の認識されていないセクションであることを示す青い波線が表示されていることです。
アプリケーションは統合モードで実行されています。