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