我已在web.config中添加此规则,以将非www网址重定向到www。
<rule name="Redirect to WWW" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^example.com$" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:0}" redirectType="Permanent" />
</rule>
虽然它适用于主站点URL。就像用户输入http://example.com一样,它会重定向到http://www.example.com
但对于某些网址,例如
http://www.example.com/userfiles/abc.pdf
重定向到
http://www.www.example.com/userfiles/abc.pdf
在这里,您可以在网址中看到2次www。
答案 0 :(得分:1)
我想这个应该有效:
<rule name="Redirect to WWW" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www\.example\.com$" negate="true" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:1}" />
</rule>
如果这个没有按预期工作,您可以尝试添加另一个条件:
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
希望这有帮助。