检查访问状态与错误页,核心是模拟真实用户和搜索引擎的请求,逐项确认服务器返回的HTTP状态码、页面内容与预期是否一致。对昭通网站开发项目来说,交付前应把首页、栏目页、内容页、表单页和404页各抽若干条URL,用状态码加内容双重核对,而不是只看浏览器能不能打开。
访问状态检查不是随机点几个链接,而是按页面类型建立清单。昭通网站开发中常见的页面类型包括:首页、列表页、详情页、搜索结果页、表单提交页、登录页、404页和301跳转页。每类至少抽3条URL,覆盖正常访问、参数变化和已删除内容三种情况。
需要关注的状态码主要有:
200:正常返回内容,但还要确认返回的是不是目标页面,而不是被替换成首页或错误提示。301/302:跳转是否指向正确目标,是否出现跳转链或多重跳转。404:内容不存在时是否返回404,而不是返回200的空白页或“内容已删除”提示页。403/401:权限控制页面是否误拦了正常用户或搜索引擎。500/502/503:服务器错误是否偶发,是否与特定参数、特定时段有关。最直接的方法是先用命令行看响应头,再用浏览器看实际渲染结果。两者结果不一致时,优先以服务器返回的状态码和响应头为准,同时排查前端路由或CDN缓存的影响。
假设要检查昭通网站开发交付后的一个详情页,可以执行:
curl -I -L https://example.com/news/123
观察输出中的 HTTP/1.1 或 HTTP/2 状态码、Location 跳转地址和 Content-Type。如果返回200但内容为空,需要继续用 curl -s 查看响应体,确认是模板渲染失败还是数据查询为空。如果返回301,要检查跳转目标是否与预期一致,并确认没有形成A跳B、B跳C的链条。
浏览器端按以下顺序检查:打开开发者工具的Network面板,勾选Preserve log,刷新页面,查看第一条文档请求的状态码;再切换到Console和Elements,确认没有因JavaScript报错导致内容未渲染。对于单页应用,直接访问深层URL可能返回200但实际由前端路由接管,这时要额外检查服务器是否对不存在的路径统一返回了200,这会掩盖真实的404。
错误页检查最容易出错的地方,是只关注页面“看起来对不对”,忽略了状态码。一个设计精美的404页如果返回200,搜索引擎可能把它当作正常页面收录,用户也无法通过状态码判断资源是否真的不存在。
检查项包括:
判断结果时,如果状态码正确但错误页内容为空,属于可用性问题;如果状态码错误但页面内容正确,属于配置问题,优先级更高,应先修复状态码。
时间和人手有限时,不要追求一次性覆盖全站。按影响面排序:先查首页、主要栏目和转化路径上的页面,再查长尾内容页;先修500和错误301,再修404页面体验。
可以建立一张简单表格,字段包括:URL、页面类型、预期状态码、实际状态码、跳转目标、内容是否正确、负责人、修复期限。每次修复后重新执行同一条命令或同一浏览器操作,确认状态码和内容都符合预期,再关闭该项。
验收标准建议写成可复核的句子,例如:“随机抽取20条URL,其中正常页面返回200且标题与预期一致,已删除页面返回404且包含返回导航,旧地址返回301且目标页面返回200。”这样检查结果不依赖个人记忆,换人也能复现。
下一步,从当前站点地图或导航中导出全部URL,按页面类型分组,先对每组抽3条执行上述状态码与内容核对,把不符合预期的条目按影响面排序后进入修复队列。