web-dev-qa-db-ja.com

IIS7.5 Webサーバーの場合、すべて同じアクションを実行する複数のReWriteルールを持つことは可能ですか?

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を特に定義したくありません。

5
Pure.Krome

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>
8
Mark Henderson

画像フォルダから複数の.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" />
0
Mitesh Patel