1

これは、ネイキッドドメインをwwwにリダイレクトするWeb.configのセクションです。

<system.webServer>
<rewrite>
  <rules>
    <clear/>
    <rule name="WWW Rewrite" enabled="true">
      <match url="(.*)"/>
      <conditions>
        <add input="{HTTP_HOST}" negate="true" pattern="^www\."/>
      </conditions>
      <action type="Redirect" url="http://www.{HTTP_HOST}/{R:0}" appendQueryString="true" redirectType="Permanent"/>
    </rule>
  </rules>
</rewrite>
</system.webServer>

問題は、次のような他のアドレスの前にも「www」が追加されることです。

  • localhost:62083-> www.localhost:62083
  • static.mysite.com-> www.static.mysite.com
  • mysite.hostcompany.com-> www.mysite.hostcompany.com

mysite.comのみをリダイレクトするために必要であり、他には何もリダイレクトしません。ルールを修正する方法は?

4

3 に答える 3

3

あなたはそれを考えすぎていると思います。テストすることはできませんが、最も簡単な方法は、書き直したい名前に一致するように条件を変更することです

<add input="{HTTP_HOST}" negate="false" pattern="^mysite.com$"/>`?
于 2013-02-07T19:46:47.560 に答える
1

この行を変更してみてください:

<add input="{HTTP_HOST}" negate="false" pattern="^mysite.com$"/>
于 2013-02-07T19:46:40.903 に答える
1

が正規表現の場合pattern、次を使用できます

^[^\.]\.[^\.]$

サブドメインのないリクエストにのみリダイレクトするには(ドットが1つだけ含まれています)

  • 利点:ドメイン名から独立
  • 短所:www.mysection.company.comでは機能しません
于 2013-02-07T19:46:41.303 に答える