ASP.NET设置404页面返回302HTTP状态码的解决方法

 更新时间:2021年9月22日 10:13  点击:2218
在配置文件中配置404页面如下:
复制代码 代码如下:

<customErrors mode="On" defaultRedirect="404.aspx">
<error statusCode="403" redirect="404.aspx" />
<error statusCode="404" redirect="404.aspx" />
<error statusCode="400" redirect="404.aspx" />
</customErrors>

访问网站时错误页面可正常显示,但HTTP状态码却是302,对SEO很不友好,按下列步骤修改使错误页面返回正确的利于SEO的404状态码:

1、在404.aspx中加入代码:
Response.Status = "404 Moved Permanently";
如果你没有做伪静态,或者没加脚本映射,以上完全没有问题,不必往下看了。如果做了伪静态,那么404页面返回的状态码仍然为302,请看第二步。

2、在 Global.asax 中加入下面的代码:
复制代码 代码如下:

protected void Application_Error(object sender, EventArgs e)
{
//在出现未处理的错误时运行的代码
this.FileNotFound_Error();
}
/// <summary>
/// 404错误处理
/// </summary>
private void FileNotFound_Error()
{
HttpException erroy = Server.GetLastError() as HttpException;
if (erroy != null && erroy.GetHttpCode() == 404)
{
Server.ClearError();
string path = "~/404.aspx";
Server.Transfer(path);
//Context.Handler = PageParser.GetCompiledPageInstance(path, Server.MapPath(path), Context);
}
}

至此,这个顽固的问题得以解决。
[!--infotagslink--]

相关文章

  • NodeJS Express框架中处理404页面一个方式

    在用 Express 的时候,路由是我最困惑的事之一。知道用 app.get('*') 可以处理所有页面,但这样除了自定义的其他路由外,静态文件是被忽略的。最近在写一个小工具的时候,找到了一个解决方案:复制代码 代码如下:var express =...2014-05-31
  • ASP.NET设置404页面返回302HTTP状态码的解决方法

    访问网站时错误页面可正常显示,但HTTP状态码却是302,对SEO很不友好,按下列步骤修改使错误页面返回正确的利于SEO的404状态码,感兴趣的朋友可以了解下...2021-09-22
  • php 定义404页面方法

    */ @header("http/1.1 404 not found"); @header("status: 404 not found"); echo 'echo 404'; exit(); /* 查看404是否设置成功可以利用firefox 的firebug插件来...2016-11-25
  • 404页面设计经验总结分享 404页面怎么设计比较好

    我们都知道,网站是由不同功能不同内容的页面构成的。但是,有一种页面是我刚到深圳做网站建设时,感到不解的。那就是当用户打开错误链接时,网站出现的404页面了。其实,一个...2017-01-22
  • .htaccess 定义404页面问题

    404页面和.htaccess文件的问题 建个.htaccess,就可以了 ErrorDocument 404 /missing.html 首页你要确定你的主机支持 .htaccess.. 修改conf文件要重启apache.. ...2016-11-25
  • ThinkPHP访问不存在的模块跳到404页面

    我们来介绍一下关于ThinkPHP访问不存在的模块跳到404页面 有需要的朋友可参考参考。 在ACTION中新建一个文件EmptyAction.class.php,文件中的代码如下: 代...2016-11-25
  • IIS设置404页面图文教程(选择URL还是文件 )

    在网站运营中,经常会因为内容整理,网页改版,造成原因的网页删除,丢失等,采用跳转404页能让保留以消失网页的流量,还能增加用户体验...2016-01-27