2013-03-15 96 views
0

目前我正在試圖建立一個301重定向,但我得到一些奇怪的錯誤..ASP.Net 301重定向錯誤

這是我使用的代碼(文件名爲Test.aspx的)

<html> 
<head> 
<script runat="server"> 
private void Page_Load(object sender, System.EventArgs e) { 
    Response.Status = "301 Moved Permanently"; 
    Response.AddHeader("Location","http://www.XXXXX.com/"); 
} 
</script> 
</head> 
<body> 
</body> 
</html> 

但我得到這個錯誤:

Runtime Error 

Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine. 

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off". 


<!-- Web.Config Configuration File --> 

<configuration> 
    <system.web> 
     <customErrors mode="Off"/> 
    </system.web> 
</configuration> 

Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL. 


<!-- Web.Config Configuration File --> 

<configuration> 
    <system.web> 
     <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/> 
    </system.web> 
</configuration> 

回答

0

您可以使用:

Response.Redirect("http://www.XXXXX.com/"); 

雖然這不是一個永久的HTTP 301

.NET Fx 4.0+,您可以:

Response.RedirectPermanent("http://www.XXXXX.com/"); 

如果你想要去手動或使用框架的早期版本,則必須在Response.End您的Page_Load事件處理程序。 (如果你不發送一些標題,然後你發送一個不適用於標題的主體)。

private void Page_Load(object sender, System.EventArgs e) { 
    Response.Status = "301 Moved Permanently"; 
    Response.AddHeader("Location","http://www.XXXXX.com/"); 
    Response.End(); 
} 
+0

我是否用上述替換了上述內容? – Alosyius 2013-03-15 14:38:18

+0

用'Response.Redirect'替換你的兩行,是的。您不必手動指定標題。 – cfeduke 2013-03-15 14:40:21

+0

仍然出現錯誤頁面:/( – Alosyius 2013-03-15 14:54:29