2

同じバージョンのサイトを異なる言語 (mysite.com、mysite.fr、mysite.eu など) で実行するコンテンツ マネージド ASP.NET サイトがあります。フランスのサイトのあるページからヨーロッパのサイトのページへのリダイレクトを作成するように依頼されたので、IIS 内で URL Rewrite を起動し、これを行うためのルールとマップを記述しようとしました。これに失敗した後、私はそれを Web.config ファイルに書き込もうとしましたが、やはり役に立ちませんでした。

明確にするために、次のものが必要です。

  • http://www.mysite.fr/publication/jobs.aspxリダイレクトする http://www.mysite.eu/jobs.aspx
  • http://www.mysite.fr/sign-in.aspx にリダイレクトしhttp://www.mysite.eu/sign-in.aspxます。

これを行う方法や、複数のドメインを持つ ASP.NET サイトでこれを行うことができるかどうかを正確に知っている人はいますか?

4

1 に答える 1

2

これは、URL 書き換えを使用して行うことができます。

これが私が使用する例です。

<rule name="Redirect .co.uk" stopProcessing="true">
  <match url="(.*)" />
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
     <add input="{HTTP_HOST}" pattern="^uk\.test\.com$" />
    </conditions>
  <action type="Redirect" url="http://www.test.co.uk/{R:1}" />
</rule>

これ{HTTP_HOST}により、リクエストの内容がチェックされ、uk.test.com と一致する場合は、新しい URL にリダイレクトされますが、ページ/フォルダー パス ({R:1}) は保持されます。

/publication/を追加すると少し複雑になりますが、元の一致に書き込むことができます ( .(.*)\/publication\/(/*)または何か、私の正規表現は完璧ではありません :-) )。

HTH

于 2012-04-05T09:57:56.173 に答える