2011-10-16 150 views
0

我想知道如何在ASP.net C#中创建从www到非www的301重定向。我想把这个代码放在两页上。我想要一个防止循环的代码,我已经阅读了几个代码。代码应该放在每个页面的Page_Load部分。301非WWW重定向到wwww asp.net C3

回答

1

我不确定“www to non-www”的含义是什么或者重定向有什么影响......无论如何,没有内置的函数可以让301重定向,但它非常微不足道做手动。

Response.StatusCode = 301; 
Response.AppendHeader("Location", "your url to redirect to"); 
Response.End(); 
+1

我想添加(为了澄清他人)ASP.NET中的Response.Redirect()只执行302重定向,而对于301你必须手动执行 - 除非你正在使用。 NET 4.0在这种情况下有Response.RedirectPermanent()。 – Dai

+0

@大卫啊很好,我不知道他们补充说。 –

0

我建议你尝试IIS7和7.5的URI重写扩展 - 它有一个选项可以启用所有请求都被重定向到www的“规范域”。等价物。

这里:http://www.iis.net/download/URLRewrite

它的工作原理,无论什么生成您的网页(所以它也适用于静态内容太)。

+0

我做了这样的: 字符串URL = Request.Url.AbsoluteUri; (url.Contains(“www”)) { //重定向 Response.RedirectPermanent(url.Replace(“http:// www。”,“http://”)); } –