3

URLの書き換えを使用せずにwwwをURLに追加するこのコードを見つけました。

<rewrite>
    <rules>
        <clear />
        <rule name="WWW Rewrite" enabled="true">
            <match url="(.*)" />
            <conditions>
                <add input="{HTTP_HOST}" negate="true" pattern="^www\.([.a-zA-Z0-9]+)$" />
            </conditions>
            <action type="Redirect" url="http://www.{HTTP_HOST}/{R:0}" appendQueryString="true" redirectType="Permanent" />
        </rule>
    </rules>
</rewrite>

ただし、scotts-cleaners.com のように「-」が含まれる URL は機能しないようです。

これにより、www.www.scotts-cleaners.com が返されます。

何か案は?

4

2 に答える 2

1

-パターンに追加するだけです:

<add input="{HTTP_HOST}" negate="true" pattern="^www\.([.a-zA-Z0-9-]+)$" />

ドメイン名で許可されている文字はハイフンと英数字のみであるため、パターンはすべての URL で機能するはずです。

于 2012-02-06T12:58:16.843 に答える
0
pattern="^www\.([.a-zA-Z0-9-]+)$"

どうやらハイフンは正規表現でエスケープする必要はありません^^

于 2012-02-06T12:56:20.300 に答える