如果有网站 myws.com,如果我请求 myws.com 或 www.myws.com,我将看到相同的网站
我想要的是在请求“myws.com”时被重定向到“www.myws.com”
谢谢
如果有网站 myws.com,如果我请求 myws.com 或 www.myws.com,我将看到相同的网站
我想要的是在请求“myws.com”时被重定向到“www.myws.com”
谢谢
有很多方法可以实现 www 子域的规范重定向,如果您使用的是 ASP.NET 4.0,您可以这样做:
if (!Request.Url.Host.ToUpper().Contains("WWW"))
{
Response.RedirectPermanent("http://www.myws.com/" + Request.Url.PathAndQuery, true);
}
你也可以使用IIS URL Rewrite 模块,一旦你安装了它,将它添加到你的 web.config 文件中:
<rewrite>
<rules>
<rule name="WWW Canonical Redirect" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^myws.com$" />
</conditions>
<action type="Redirect" url="http://www.myws.com/{R:0}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
如果您有权访问 IIS,则可以使用 URL 重写将流量从 myws.com 永久重定向到 www.myws.com。按照本教程:http ://weblogs.asp.net/owscott/archive/2009/11/27/iis-url-rewrite-rewriting-non-www-to-www.aspx进行 URL 重写。
如果您无权访问 IIS,则可以在 Application_BeginRequest 事件中将以下代码添加到 global.asax.vb 中:
If Request.Url.Authority.ToString <> "www.myws.com" Then
Response.RedirectPermanent(Request.Url.Scheme.ToString() & "://www.myws.com" & Request.Url.AbsolutePath.ToString())
End If