Asp.net 谷歌404和.NET自定义错误页面
我有一个ASP.NET2.0网站,有一个自定义的404页面。当找不到内容时,站点将为自定义404页面提供一个添加了aspxerrorpath=/mauro.aspx的查询字符串。404页本身的状态为200。为了解决这个问题,我添加了Asp.net 谷歌404和.NET自定义错误页面,asp.net,http-status-code-404,google-widget,Asp.net,Http Status Code 404,Google Widget,我有一个ASP.NET2.0网站,有一个自定义的404页面。当找不到内容时,站点将为自定义404页面提供一个添加了aspxerrorpath=/mauro.aspx的查询字符串。404页本身的状态为200。为了解决这个问题,我添加了 protected void Page_Load(object sender, EventArgs e) { Response.StatusCode = 404; } 我添加了Google小部件,但有两个问题。在中,它不会显
protected void Page_Load(object sender, EventArgs e)
{
Response.StatusCode = 404;
}
我添加了Google小部件,但有两个问题。在中,它不会显示它应该显示的位置。如果我把它添加到内容中,我会在第226行或其附近得到一个“未知错误”;如果我将其添加到标题部分,搜索框将显示在内容上方。在Firefox中,它运行良好
因此,我的问题是:
我在global.asax文件中处理了404
protected void Application_BeginRequest(object sender, EventArgs e)
{
string url = Request.RawUrl;
if ((url.Contains(".aspx")) && (!System.IO.File.Exists(Server.MapPath(url))))
{
Server.Transfer("/Error/FileNotFound.aspx");
}
}
现在,如果有人能帮我使用谷歌小部件,那就太好了 ASP.NET 3.5 SP1中有一种新的重定向模式,您现在可以使用它,这样它就不会重定向。它显示错误页面,但保持URL不变: 对于URL重定向也很好。如果将web.config中的重定向模式设置为“ResponseWrite”,则可以避免重定向到自定义错误页,并使浏览器中的URL保持不变
- (MSDN)