网页显示 404notfound 报错该如何解决

网页弹出404 Not Found提示,含义很简单:服务器正常运行、域名也能正常访问,但服务器找不到你请求访问的这个页面地址。不是服务器故障,也不是本地网络断开,单纯是这个页面不存在对应路径。

如果你只是网页访问者,可以按下面思路排查。不要直接关闭页面,先检查地址栏网址。确认有没有输错字母,大小写是否和原链接一致,末尾斜杠有没有多打或者漏写。部分服务器区分大小写,Page和page会被判定成两个不同页面。如果是点击别人分享的链接跳转过来,可以复制网址,只保留域名部分,比如www.example.com,访问网站首页。首页正常打开,代表网站本身没问题,只是目标内页被移除。

网页显示 404notfound 报错该如何解决

有些网址后面附带大量参数,问号、and符号、百分号混杂。可以删掉问号后面全部内容,只保留问号之前的地址重试。很多404报错是参数过期或者解析异常导致,删掉参数之后页面就能正常加载。如果是搜索引擎结果页点击进入,页面可能已经被删除,搜索引擎缓存还没有更新。回到搜索结果,点击快照或者缓存,有可能查看旧版页面内容。也可以更换关键词检索,查找网站内其他相关页面。

站内搜索也是可行办法。404报错页面或是网站导航栏一般自带搜索框,直接搜索需要查找内容的关键词,比反复尝试失效链接效率更高。网站站点地图通常路径为/sitemap.xml,打开文件可以查看网站当前保留的全部页面,从中寻找替代入口。可以分别用手机、电脑尝试访问,有时候只是单台设备缓存异常,更换设备访问就恢复正常。浏览器缓存、DNS缓存、CDN缓存都可能造成页面已经恢复,但依旧显示404。使用Ctrl+F5强制刷新页面,或者打开浏览器无痕窗口访问,排除本地缓存带来的问题。

如果你是网站管理员,遇到404重点要查找根源。第一步查看服务器日志,Nginx的access_log和error_log会记录所有404请求,同时记录服务器检索文件的路径。日志记录路径,经常和你预想存放文件路径不一致。确认文件是否保留在对应目录,文件名有没有被修改,文件权限配置是否正确。上传文件的时候文件名包含空格、中文,经过URL编码之后路径改变,服务器无法识别文件。

伪静态规则是高频出错点。WordPress、Typecho这类程序,页面地址不是真实文件路径,依靠重写规则映射。一旦修改规则,或是更换服务器,旧链接会批量404。进入后台重新保存一次固定链接配置,很多时候可以刷新重写规则。Nginx的try_files配置写错,或是.htaccess文件失效,会出现首页正常打开,所有内页404的现象。检查服务器配置,确认请求能够正确转发给PHP或者应用入口。

网站迁移、更换域名之后,旧链接没有配置301跳转,会出现大规模404。搜索引擎收录的还是旧地址,用户点击访问就会报错。这种情况需要在服务器配置,把旧路径映射到新路径,或者直接把旧域名整体跳转至新域名。CDN如果缓存了旧的404响应,就算源站故障修复,用户访问依旧看到404,需要进入CDN控制台刷新缓存。

还有一种情况是页面被误删除。部分CMS系统删除文章之后,对应的URL直接失效,不会自动跳转。如果这个页面还有访问流量,可以恢复原文内容,或是制作自定义404页面,引导访客跳转相关栏目或者站内搜索。自定义404页面本身不会改变服务器返回状态码,但可以避免访客看到空白报错页。注意不要把自定义404页面设置返回200状态码,搜索引擎会误判页面正常存在,持续收录无效死链。

404报错并不是严重故障。普通访客遇到,绝大多数是链接失效,更换访问入口就能解决。站长遇到404,代表服务器找不到对应地址,顺着日志和配置排查,基本都能定位问题。最怕放任大量死链不管,堆积之后,搜索引擎评分和用户体验都会持续下降。

免责声明:本文提供的方法与建议仅供技术参考,实际部署效果受机房环境、运营商线路、系统配置等多重因素影响。请在专业人员指导下操作,因自行操作导致的业务损失本站不承担责任。

相关推荐