重定向到 www
Redirecting to www
我已将 global.asax 添加到我的 Web 项目,我正在尝试检查 Begin_Request
中的域是否包含 "www",如果不包含,然后将他们重定向到他们请求的页面,但在其前面加上 "www"。例如,如果我尝试访问:SampleSite.com,它会将我定向到 SampleSite.com/www.SampleSite.com/www.SampleSite.com/www.SampleSite.[=20= .SampleSite.com/www.SampleSite.com/www.SampleSite.com/www.SampleSite.com/index.aspx
代码如下:
<script runat="server">
Sub Begin_Request(ByVal sender As Object, ByVal e As EventArgs) Handles Me.BeginRequest
Dim domain As String = Request.Url.Host
If (Not domain.StartsWith("www")) Then
Dim path As String = ""
path = String.Format("www.{0}", Request.Url.AbsoluteUri.Substring(7))
Response.Redirect(path)
End If
End Sub
</script>
有什么想法吗?
我认为您不应该通过代码来执行此操作,而应该使用 IIS 重定向功能。 Here 你有一个关于如何在 IIS 7 上执行此操作的示例
如果您仍想继续使用这种方法,请更改
String.Format("www.{0}", Request.Url.AbsoluteUri.Substring(7));
来自
String.Format("{0}://www.{1}", Request.Url.Scheme, Request.Url.AbsoluteUri.Substring(7));
我已将 global.asax 添加到我的 Web 项目,我正在尝试检查 Begin_Request
中的域是否包含 "www",如果不包含,然后将他们重定向到他们请求的页面,但在其前面加上 "www"。例如,如果我尝试访问:SampleSite.com,它会将我定向到 SampleSite.com/www.SampleSite.com/www.SampleSite.com/www.SampleSite.[=20= .SampleSite.com/www.SampleSite.com/www.SampleSite.com/www.SampleSite.com/index.aspx
代码如下:
<script runat="server">
Sub Begin_Request(ByVal sender As Object, ByVal e As EventArgs) Handles Me.BeginRequest
Dim domain As String = Request.Url.Host
If (Not domain.StartsWith("www")) Then
Dim path As String = ""
path = String.Format("www.{0}", Request.Url.AbsoluteUri.Substring(7))
Response.Redirect(path)
End If
End Sub
</script>
有什么想法吗?
我认为您不应该通过代码来执行此操作,而应该使用 IIS 重定向功能。 Here 你有一个关于如何在 IIS 7 上执行此操作的示例
如果您仍想继续使用这种方法,请更改
String.Format("www.{0}", Request.Url.AbsoluteUri.Substring(7));
来自
String.Format("{0}://www.{1}", Request.Url.Scheme, Request.Url.AbsoluteUri.Substring(7));