Appearance
概述
在系统初次安装或更新升级完成后,建议按照本自检清单逐一核验各模块运行状态,确保生产环境稳定可用。
核心环境自检项
PHP 与扩展检测
在服务器命令行执行:
bash
php -v
# 检查 Swoole 扩展
php --ri swoole
# 检查 Redis 扩展是否加载成功
php --ri redis
# 检查 fileinfo 扩展是否加载成功
php --ri fileinfo
# 检查专属核心加载扩展 ebaozu_loader
php --ri ebaozu_loader
ebaozu_loader预期输出:textebaozu_loader ebaozu loader extension => enabled version => 1.0.0 product_line => ebaozu_v4 key_id => <您的专属KeyID>
禁用函数自检
检查 proc_open 是否已从 disable_functions 中移除:
bash
php -r "var_dump(function_exists('proc_open'));"
# 输出 true 则为正常商业授权与防下载安全自检
证书文件存在与权限:
bashls -l config/ebaozu/license.key # 预期权限为 -rw------- (600),所有者为 www:wwwWeb 防下载安全拦截: 在外部浏览器或终端发起请求测试:
bashcurl -I https://你的域名/config/ebaozu/license.key # 预期 HTTP 状态码为 404 或 403,严禁返回 200 下载
服务运行自检项
Swoole 服务与端口检测
检查 Swoole 进程与监听端口(默认 20698 或 20697):
bash
# 查看进程是否存在
ps -ef | grep "think swoole"
# 查看端口是否监听
netstat -tunlp | grep 20698Supervisor 守护进程状态
bash
supervisorctl status
# 检查主服务状态是否为 RUNNINGRedis 连接检测
bash
redis-cli ping
# 返回 PONG 即正常业务功能冒烟验证
| 验证项 | 验证路径 | 预期结果 |
|---|---|---|
| 总后台访问 | https://域名/admin | 正常加载后台登录界面,无 404/502 |
| 后台登录 | 输入管理员账号密码 | 登录成功并进入仪表盘 |
| 移动端访问 | https://域名/ 或 /pages/index/index | 正常渲染移动端首页,轮播图与商品展示正常 |
| 连锁门店后台 | https://域名/store | 门店后台界面正常加载 |
| 收银台前台 | https://域名/cashier | 收银台界面正常加载 |
| 接口通信 | 浏览器 F12 网络请求 | /api/* 与 /adminapi/* 接口状态码返回 200 |
| WebSocket 通信 | 登录客服或进入商品页 | 控制台 WebSocket 连接建立成功 (wss://.../ws) |
| 安装锁检测 | 检查 public/install/install.lock | 文件必须存在,防止被重新安装 |
常见安装与排错自查指南
| 错误信息 / 现象 | 可能原因 | 解决办法 |
|---|---|---|
ebaozu_loader extension is required | PHP 环境未加载 Loader 扩展 | 1. 检查 php.ini 中是否添加 extension=ebaozu_loader.so(注意不可写成 zend_extension);2. 确认修改的是 CLI/Swoole 实际加载的 php.ini(通过 php --ini 查看);3. 重启 Swoole 或 Supervisor。 |
license file not found or unreadable | 授权文件缺失或权限不足 | 1. 确认 config/ebaozu/license.key 存在;2. 确认权限为 0600,所有者为运行用户(如 www)。 |
license verification failed | 证书损坏或被非标准编辑器修改 | 授权证书为加密二进制格式,请确保在传输过程中未损坏,避免使用文本编辑器打开保存破坏二进制编码。 |
unauthorized domain | 访问域名与授权域名不一致 | 请核对当前访问的 Host 域名是否为合同约定的授权主域名(系统支持 test. 前缀测试子域名)。 |
license expired | 商业授权已到期 | 授权已过有效期,请联系官方办理续期,覆盖新 license.key 并重启/重载服务即可恢复。 |
license issued in the future | 服务器时钟偏差过大 | 服务器系统时间异常(早于证书签发时间),请使用 timedatectl 或 ntpdate 同步标准网络时间。 |
container file not found | 核心组件缺失 | 部署包解压不完整或核心组件损坏,请重新从安装包覆盖受影响文件。 |