Skip to main content

Module debug_page

Module debug_page 

Source
Expand description

Whoops-style HTML 调试页面 — 对齐 PHP whoops 异常展示

§PHP 对齐

ThinkPHP 6 默认集成 whoops 库,在开发环境渲染交互式错误页面:

  • 顶部红色标题栏(错误类型 + 消息)
  • 文件:行号(灰色路径,可点击打开 IDE)
  • 堆栈列表(可折叠,每帧显示文件:行号 + 函数名 + 源码片段)
  • 请求信息(method / uri / headers / query / body)
  • 环境信息(Rust 版本 / 进程 PID / 工作目录)

生产环境关闭调试页,返回简洁 JSON 或静态 HTML,避免泄露堆栈。

§安全约束

  • 所有用户输入(错误消息、文件路径、请求头值)必须 HTML 转义,防止 XSS
  • 源码片段从文件读取,限制最多 21 行(前后 10 行 + 错误行),避免读取大文件
  • 调试页只在 debug_mode = true 时渲染,生产环境强制返回简洁页

Structs§

DbQuery
数据库查询记录 — 对齐 PHP Whoops 的 SQL 查询展示
DbQueryCollector
数据库查询收集器 — 线程安全的查询记录存储
DbQueryLocation
数据库查询调用位置 — 用于编辑器跳转
DebugError
调试错误信息
DebugPageConfig
调试页配置
StackFrame
单个堆栈帧

Enums§

Editor
编辑器类型 — 对齐 PHP Whoops 的 editor 配置

Statics§

GLOBAL_DB_QUERY_COLLECTOR
全局数据库查询收集器(对齐 PHP DB::listen() 全局监听器)

Functions§

debug_error_response
根据调试配置构建错误响应
editor_url
生成编辑器跳转 URL
from_panic
从 panic 信息构建调试错误
render_db_queries_html
渲染数据库查询列表为 HTML 片段
render_debug_html
渲染 Whoops-style HTML 调试页
render_production_html
渲染生产环境简洁错误页(不泄露堆栈)