页面报错识别:HTTP 200 但页面其实是错的
对用户来说最常见的「网站挂了」是:状态码 200,页面上却印着 PHP Fatal error 或「数据库连接失败」。普通监控只认状态码,这种假正常会漏报;WebCheck 在检测时额外做页面报错识别。
#能识别什么
- PHP Fatal / Warning / Notice 直接输出到页面;
- 「数据库连接失败 / 查询错误」类提示;
- Laravel、ThinkPHP、WordPress、Yii、Django、Spring、Tomcat、ASP.NET、Express、Rails 等框架的异常页;
- 内容异常的 200:默认欢迎页 / 未配置页这类「挂了但没报错」的页面。
#误报保护
- 有「必须包含关键字」的站点,以关键字为准做兜底;
- 识别命中时记录错误类型
page_error,并在详情页截取错误原文片段(通常直接指出出错的文件和行号)。
说明
错误原文是你排障的第一手线索:先看数据库连接和最近改过的代码。抓取的页面快照也用于核对,但敏感内容请避免出现在页面里。
相关:判定规则 · 「我能打开但被判故障」