正确设置的步骤:
步骤一:
ISS中404错误页面设置
打开IIS管理器-->点击要设置自定义404的网站的属性-->点击自定义错误选项-->选中404页-->选中并打开编辑属性-->设置成文件或默认值-->URL 里填写“/404.html”,按确定退出。再把做好的404.html页面上传到网站根目录下。此处在“消息类型”中一定要选择“文件”或“默认值”,而不要选择“URL”,不然,将导致返回“200”状态码。
步骤二:
Apache下设置404错误页面很简单,一般都是有一个404错误页面设置的功能,只需要自己做好一个404页面,上传到对应的目录就可以了。
步骤三:
一些主机的空间默认就是返回值320或200状态码,怎么办呢?我们可以通过下面的代码来解决:
ApacheServer下设置404错误页面
建立一个.htaccess 文件,在其中加入如下内容:ErrorDocument 404/notfound.php,然后将.htaccess文件上传到网站根目录,最后制作一个404页面,命名为notfound.php,和上面的名字一定要统一,同样上传到网站根目录就OK了。这里切记不要使用绝对URL,如果使用绝对URL返回的状态码是302或200了。
IIS/asp。net下设置404错误页面
首先,修改应用程序根目录的设置,打开 web.config 文件,引用以下内容:
<configuration><system.web>
<customErrors mode=OndefaultRedirect=error.asp>
<error statusCode=404″ redirect=notfound.asp/>
</customErrors>
</system.web>
</configuration>
error.asp为系统默认的404页面名,notfound.asp为自定义的404页面,使用时请修改相应文件名。
然后,在自定义的404页面notfound.asp中加入以下代码,便可以保证IIS服务器能够正确地返回404状态码。
<% Response.Status= 404 Not Found%>
总而言之,网站的404页面一定要设置好,如果说返回的是200状态码那就是自找麻烦,不如不做。木木seo建议404页面设置完成后,一定要检查是否正确,返回的一定要是404状态,如果你网站因为产生较多200码404页面而导致降权,那是非常悲剧的。
另外我们在制作404页面的时候也要注意页面的美观和体验,尽量不要自动跳转也不要仅仅显示此页面无法访问,404页面也需要有清晰的导航,让用户来决定去向,这样才能留住用户。
<html><head>
<title>Yout site</title>
</head>
<body>
<div class="container container-sm">
<div id="icon-header">
<span class="fa fa-question-circle"></span>
</div>
<div id="text-column">
<header class="secondary-header">
<h1>Error 404: <strong>Page not found.</strong></h1>
<p>This is not the page you're looking for.</p>
</header>
<nav class="secondary-nav">
<ul>
<li>
<a href="index.html" class="btn btn-primary">
Take me home
<span class="fa fa-exclamation"></span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</body>
</html>
一、根本原因
服务器找不到指定的页面,例如IIS默认的404页面:
二、直接原因
链接地址写错,如出现了拼写错误,相对路径或绝对路径层级的关系写错
链接地址本来是对的,但过了一段时间服务器删除了那个页面,导致页面找不到
其他原因,如部分系统对没有权限的用户访问返回404页面,主要看服务器配置,任何请求页面都可以返回成404错误
三、解决方法
正确的填写链接地址,尤其主要相对链接的相对路径层级数在不同的服务器根目录下可能不同
服务器已删除资源,一般需要更新链接地址