检查访问状态与错误页,核心是先用HTTP状态码确认服务器返回结果,再根据错误类型决定是修复内容、调整服务器配置,还是处理权限与跳转。状态码是判断依据,页面外观只是辅助。
访问一个网址时,浏览器或命令行工具会收到服务器返回的状态码。常见的有:
200:正常返回内容。301或302:跳转,前者通常表示永久跳转,后者为临时跳转。404:请求的资源不存在。403:服务器理解请求但拒绝执行,常见于权限或目录访问限制。500:服务器内部错误,通常与程序执行、数据库连接或配置有关。错误页显示“页面不存在”不一定就是404,有些CMS会返回200状态码再展示错误提示。这种情况对搜索引擎和访问者都不友好,需要用状态码工具确认实际返回值。
在本地终端执行以下命令,可以只看响应头,不下载页面正文:
curl -I https://example.com/some-page
如果只想看状态码,可以用:
curl -o /dev/null -s -w "%{http_code}\n" https://example.com/some-page
返回200表示正常;返回301或302时,用curl -IL跟随跳转,确认最终落地页是否正常;返回404时检查该内容是否已删除、别名是否变更;返回500时查看CMS错误日志和服务器日志,定位具体报错文件与行号。
适用条件:适合单页抽查和批量脚本检查。判断结果时,以状态码为准,不以浏览器页面文字为准。
不同CMS的菜单名称不同,但检查方向一致:
适用条件:适合后台可登录、服务器权限可查看的情况。若无法登录后台,优先用命令行和服务器日志判断。
遇到访问异常时,常见两种处理路径:
判断依据:如果只有个别页面异常,优先从CMS内容与跳转设置入手;如果全站异常,优先从服务器层排查。假设一个站点只有某篇文章返回404,而首页和其他文章正常,那么问题更可能在内容别名或分类链接,而不是服务器整体故障。
修复后不要只看页面能否打开,还要确认:
下一步:选一个当前返回异常的具体URL,用curl -I记录状态码,再对照CMS固定链接设置和服务器错误日志,确定是内容层问题还是服务层问题。