一个能够生成高度模仿 Cloudflare 风格自定义错误页面的工具。它允许你将逼真的错误页面无缝集成到自己的网站项目中,并提供了一个便捷的在线编辑器进行实时预览与配置。
项目地址

功能特点
- 实时在线编辑器:通过直观的网页编辑器,无需本地环境即可快速创建和预览自定义错误页面。
- 灵活的参数化配置:支持通过丰富的参数控制页面内容,包括错误代码、状态信息(浏览器、Cloudflare、主机)、错误来源以及自定义的“发生了什么”与“我能做什么”的HTML描述。
- 多语言支持规划:核心库目前基于 Python 实现,未来计划扩展支持 Node.js、PHP 等其他后端语言。
- 丰富的参考示例:项目内置了多种场景的示例,如默认错误页、基础设施故障页、服务器正常页等,方便开发者快速上手和定制。
使用方法
Python 库集成
-
安装
可以通过 pip 直接安装该项目:
pip install git+https://github.com/donlon/cloudflare-error-page.git
-
生成错误页面
在 Python 代码中导入 render 函数,并通过传递参数字典来生成最终的 HTML 页面。
import webbrowser
from cloudflare_error_page import render as render_cf_error_page
error_page = render_cf_error_page({
'browser_status': {
"status": 'ok',
},
'cloudflare_status': {
"status": 'error',
"status_text": 'Error',
},
'host_status': {
"status": 'ok',
"location": 'example.com',
},
'error_source': 'cloudflare',
'what_happened': '<p>There is an internal server error on Cloudflare\'s network.</p>',
'what_can_i_do': '<p>Please try again in a few minutes.</p>',
})
with open('error.html', 'w') as f:
f.write(error_page)
webbrowser.open('error.html')
-
集成到Web服务
生成的 HTML 字符串可以轻松地集成到任何 Python Web框架(如 Flask、Django 或 FastAPI)中,作为特定错误路由(例如 502、503)的响应返回给客户端。
在线编辑器使用
对于快速原型设计或非编程场景,更推荐使用在线编辑器。
- 访问编辑器页面。
- 在左侧的参数面板中调整各项设置,所有改动将实时反映在右侧的预览区。
- 配置满意后,可以直接复制生成的 HTML 代码,或点击下载按钮保存为本地文件。
这个工具特别适合需要为其 云原生 应用或API服务提供统一、专业错误响应的场景,也适用于前端演示和测试。通过精细的状态模拟和 前端 友好的HTML/CSS输出,它能有效提升网站错误状态页面的用户体验和品牌一致性。
|