IIS7.5サイトでうまく機能する書き換えモジュールがあります。
ここで、すべてHTTP410-GoneステータスになるURLをいくつか追加したいと思います。
例えば。
<rule name="Old Site = image1" patternSyntax="ExactMatch" stopProcessing="true">
<match url="image/loading_large.gif"/>
<match url="image/aaa.gif"/>
<match url="image/bbb.gif"/>
<match url="image/ccc.gif"/>
<action type="CustomResponse" statusCode="410"
statusReason="Gone"
statusDescription="The requested resource is no longer available" />
</rule>
しかし、それは無効です-ウェブサイトは、書き換え設定エラーがあると言って開始しません。
これを行う別の方法はありますか? each URLに対して単一のURLとACTIONを特に定義したくありません。
everyリクエストに一致し、条件を使用して特定のURLのみにフィルタリングする必要があります。
<rule name="Old Site = Image1" stopProcessing="true">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAny">
<add input="{REQUEST_URI}" pattern="^(.*)image/aaa.gif$" />
<add input="{REQUEST_URI}" pattern="^(.*)image/bbb.gif$" />
<add input="{REQUEST_URI}" pattern="^(.*)image/ccc.gif$" />
</conditions>
<action type="CustomResponse" statusCode="410" statusReason="Gone" statusDescription="The requested resource is no longer available" />
</rule>
画像フォルダから複数の.gif画像を削除したい場合は、以下のように(。*)ワイルドカード正規表現を使用することもできます。
例えば。
<rule name="Old Site = Image1" stopProcessing="true">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAny">
<add input="{REQUEST_URI}" pattern="^(.*)image/(.*).gif$" />
</conditions>
<action type="CustomResponse" statusCode="410" statusReason="Gone" statusDescription="The requested resource is no longer available" />