1

IIS7 の下に、すべてのサブドメインを *.mydomain.com としてキャッチする Web サイトがありますが、一部のサイトでは次のようにサブドメインがランダム化されます。

  • www2.mydomain.com
  • wwwmydomain.com
  • etc.mydomain.com

どのサブドメインでも MVC ページを完全に読み込めますが、Google のインデックス作成では URL が 2 倍になります。これは、2 つの URL が異なるためです。

URLとクエリ文字列を保持するglobal.asaxを使用して、サブドメインをwww.mydomain.comに永久に「301」リダイレクトします。例えば

  • www2.mydomain.com/Controller/Action/ID?query=asb TO www.mydomain.com/Controller/Action/ID?query=asb

  • wwwmydomain.com/Controller/Action/ID?query=asb TO www.mydomain.com/Controller/Action/ID?query=asb

どのサブドメインをリダイレクトしてはならないかを C# でカスタマイズするため、IIS7 リダイレクトを使用したくありません。

すべてのコントローラーのページベースを作成するのは好きではありません。

4

1 に答える 1

4

IIS を使用していると仮定すると、ARR でこれを実現できるはずです。

例:

<rule name="SubDomain" stopProcessing="false">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTP_HOST}" pattern="^(?!www)(\w+)\.mine\.co\.uk$" />
                    </conditions>
                    <action type="Rewrite" url="{C:1}/{R:1}" />
</rule>  

参照: http://forums.iis.net/p/1155754/1895646.aspx

于 2012-09-11T15:24:48.377 に答える