2

ドメインへの特定のURLへのリクエストを書き換えたりリダイレクトしたりするxmlとしての既存のルールがあります。アウトバウンドリクエストがドメインから出ることはありません。

1つのURL(abc.comなど)にのみ例外を追加したいと思います。特定のリクエストに例外を追加するにはどうすればよいですか?

(IISはASP.NETアプリケーションではなく他のアプリケーションで動作するため、global.asaxのようなものは提供しないでください)。

現在のルール:

<rewrite>
    <rules>
      <rule name="topcontent">
           <match-url=".*">
                <action type="rewrite" url="mysite.com/{R:0}"/>
           </match-url>
       </rule>
    </rules>
</rewrite>

インバウンドリクエストが来ると、URLがmysite.comに書き換えられます。abc.com/......と言う例外を追加する必要がありますこれを行う方法は?

4

3 に答える 3

2

ルールの上に別のルールを作成しますtopcontent

<rule name="special">
    <match-url="abc.com">
        <action type="rewrite" url="mysite.com/specialPage.htm"/>
    </match-url>
</rule>

同様の質問があります:IISURL書き換え例外

于 2012-11-19T02:45:18.417 に答える
0

以下のコードを使用できます。

<rule name="special" enabled="true">
  <match url=".*" />
  <conditions logicalGrouping="MatchAll" >
    <add input="{HTTP_HOST}" pattern="^(www\.)?abc\.com$" negate="true" />
  </conditions>
  <action type="Redirect" url="http://mysite.com/{R:0}"/>
</rule>

ルールに条件が追加されているため、条件が満たされない場合は、アクションが実行されます(negate="true"

をチェックし、ここで例外である abc.comまたはwww.abc.comhttp://{HTTP_HOST}/urlと一致しない場合は、アクションを実行します。

Redirectまた、代わりにここを使用してもよいと思いますRewrite

于 2012-11-19T21:00:36.347 に答える
0

IISマネージャー>[サイト]>URL書き換えに移動します。

このルールの前にabc.comに一致する新しいルールを追加し、[後続のルールの処理を停止する]をオンにします。

于 2012-11-16T14:03:09.053 に答える