今天在网上找了很多关于404页面的资料,为了彻底了解一些关于404的知识。
登录谷歌管理工具后台,发现网站未验证,并提示:我们检测到您的404(文件未找到)错误页面在表头返回200(成功)状态。(出现这种问题一定要注意)
当你使用google sitemaps来验证你的网站时,如果你使用html文件来验证,你总会遇到这样的错误(我们检测到你的404(文件未找到)错误页面在响应头返回了一个状态码200 (OK)。
而不是完成验证,只能通过meta标签验证。
这是主机404的文件配置的问题。网友是这么说的,但是我是根据网站信息在404错误页面设置的,而且设置了自定义404错误页面后,用服务器头检查工具输入了一个不存在的url。
检查HTTP头的返回,不是“404找不到”而是200状态码。
无论服务器的空间提供者后台管理如何更改或删除自定义404错误页面设置,效果都是一样的,http状态返回值是200而不是“404未找到”。后来我潜心智慧。
只需删除自己的自定义404错误页面,服务器的后台自定义404错误设置仍然保留404错误页面的链接。使用服务器头检查工具,我发现返回的状态代码是404。
这是系统默认的404错误页面。
网站信息如下(注:前两类网站空间服务器大多不支持,仅支持。html或htm):
(1)在Apache下设置404错误页面
为Apache服务器设置404错误页面的方法很简单,只需将以下内容添加到。htaccess文件:errordocument404/notfound.php。
注意:
1.切记不要把404错误转到网站首页,否则首页可能会在搜索引擎中消失。
2.记住不要使用绝对URL。如果使用绝对URL,返回的状态代码是“302”和“200”(已测试)。
(B) iis/ASP.net设置404错误页面
首先修改应用根目录的设置,打开“web.config”文件进行编辑,添加以下内容:
/system.web
/configuration
注:上文例中“error.asp”为系统默认的404页面,“notfound.asp”为自定义的404页面,使用时请修改相应文件名。
然后,在自定义的404页面“notfound.asp”中加入:
%
Response.Status=“404 Not Found”
%
这样,便可以保证IIS能够正确地返回“404”状态码
(三)在IIS/ASP.net下设置404静态页面
设置静态404错误页面的方法则比较简单,在IIS管理器中右键单击要管理的网站,打开“属性”中的“自定义错误信息”页,为“404”设定相应的错误信息页即可。不过,
此处在“消息类型”中一定要选择“文件”或“默认值”,而不要选择“URL”,不然,将导致返回“200”状态码。