最近,有网友遇见了打开网页提醒“404 not found“的情况,下面为大家解答404 not found是什么意思,为什么会出现404 not found。
一、404 not found是什么意思?
404 not found,从英文单词层面理解的意思是:404 未找到。它是一种标准的HTTP返回代码,当用户输入一个链接时,服务器上的IIS(Internet信息服务)会首先检测用户输入的地址链接是否有对应的网页信息,如果没有对应的网页信息,说明用户输入的是一串无效的链接,这时IIS就会通过服务器向终端用户发送404错误代码页提示,告诉用户找不到与该地址链接对应的网页信息。在中文网页环境中如果对404返回页面进行汉化和合理的优化,让用户第一时间得知自己输入错误,通过优化过后的404页面引导用户进入正确的链接,而非立即离开网站,可以说404 not found的出现大大的提高了用户体验度,使用更加友好的方式面对用户。
二、为什么会出现404 not found?
第一种: 用户输入的地址链接有误,导致IIS提示404 not found。
第二种: 服务器上本该有的页面已经被删除了,这种情况多发于BBS论坛,N年前的帖子如今被你通过搜索引擎搜索出来了,但实际上BBS论坛为了保障服务器的资源合理运用,都会将过期或非常久远的信息页面删除,导致404 not found。
第三种: DNS设置阻止,就中文环境而言,国外有一些被禁网站在中国浏览同样会出现404 not found的现象,这需要使用代理服务器才可以正常浏览。
从专业的角度来讲造成的原因有三种情况:
1.无法在所请求的端口上访问Web站点。
2.Web服务扩展锁定策略阻止本请求。
3.MIME映射策略阻止本请求。
三、404 not found的作用
1.避免出现死链接
网站设置404页面后,如果网站出现死链接,搜索引擎蜘蛛爬行这类网址得到“404”状态回应时,即知道该URL已经失效,便不再索引该网页,并向数据中心反馈将该URL表示的网页从索引数据库中删除。避免因为死链接影响网站收录。
2.提升用户体验
404页面通常为用户访问了网站上不存在或已删除的页面,服务器返回404错误页面,告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开,消除用户的挫败感。
3.避免信任度下降
搜索引擎通过HTTP状态码来识别网页的状态。当搜索引擎获得了一个错误链接时,网站应该返回404状态码,告诉搜索引擎放弃对该链接的索引。而如果返回200或302状态码,搜索引擎就会为该链接建立索引,这导致大量不同的链接指向了相同的网页内容。结果是,搜索引擎对该网站的信任度大幅降低。很多网站存在这个问题:404页面返回的是200或302状态码而不是404状态码。
4.避免被惩罚
有些网站由于应用了一些错误的服务器配置,导致返回的是200状态码或是302状态码,虽然这些状态码对访问网站的用户没有影响,但是却会误导搜索引擎,使搜索引擎认为该页面是有效页面,从而抓取下来。如果404页面过多,就造成了大量的重复页面,很有可能被搜索引擎认为是作弊而遭到惩罚
四、404 not found的解决方法介绍:
上网后,在浏览这些站点时遇到各种不同的连接错误。这种错误一般是由于网站发生故障或者你没有浏览权限所引起。最常见的就是404 NOT FOUND错误信息。主要是因为IE不能找到你所要求的网页文件,该文件可能根本不存在或者已经被转移到其他地方。
1.对于存在的网页内容由于路径改变而导致访问不了时,可在IIS 中定义404错误指向一个动态页面,在页面里面使用301永久重定向跳转到新的地址,此时服务器返回301状态码。
2.设置404指向一个设计好的html 文件,此时页面返回的404状态码。 现在的idc提供商基本都提供404设置的功能,直接上传文件设置即可。在IIs中设置方法:打开IIS管理器-->点击要设置自定义404的网站的属性-->点击自定义错误选项-->选中404页-->选中并打开编辑属性-->设置成 URL --> URL 里填写“/err404.html”-->按确定退出再把做好的err404.html 页面上传到网站根目录下。此处在“消息类型”中一定要选择“文件”或“默认值”,而不要选择“URL”,不然,将导致返回“200”状态码。
3.404指向一个动态页面,比如error.asp,如果不在页面里面进行设置,仅仅是返回提示的HTML 代码,将导致页面返回200 状态码,这是不正确的,我们可以在显示完提示内容后,增加语句: Response.Status="404 Not Found" ,这样就保证页面返回404状态码。
4.Apache下设置404错误页面。为Apache Server设置404错误页面的方法很简单,只需在.htaccess 文件中加入如下内容即可,ErrorDocument 404 /notfound.php 编辑本段如何制作404页面