Skip to content

问题现象

访问 EBAOZU 系统时,浏览器页面直接返回 500 Internal Server Error,或者在网络请求中接口响应 HTTP 状态码 500。


常见原因与排查流程

宝塔反向代理可视化编辑导致的配置被篡改

  • 现象:在宝塔面板的【反向代理】列表中点击编辑或开启高级缓存后,宝塔自动在站点 Nginx 配置文件中追加了重复或不兼容的缓存与重定向指令,导致 Nginx 内部处理循环或代理崩溃。
  • 排查与解决
    1. 打开宝塔面板 -> 网站 -> 目标站点 -> 【配置文件】。
    2. 检查底部的反向代理代码块,移除宝塔自动追加的异常缓存块。
    3. 保留如下标准经过验证的反向代理配置:
nginx
location / {
    proxy_pass http://127.0.0.1:20697;
    proxy_http_version 1.1;
    proxy_read_timeout 60s;
    proxy_connect_timeout 60s;
    proxy_redirect off;

    # 请求头透传
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Authori-zation $http_authori_zation;

    # 禁用代理缓存
    add_header Cache-Control no-cache;
}

后端 PHP 运行异常(应用级 500)

  • 现象:Nginx 反向代理正常工作,但后端 Swoole 处理请求时抛出未捕获的 PHP 异常(如数据库连接失败、Redis 超时、语法错误或缺少扩展)。
  • 排查步骤
    1. 打开项目根目录下 .env 文件,将 APP_DEBUG = true 开启。
    2. 重启 Swoole 守护进程:
      bash
      supervisorctl restart ebaozu_v4
    3. 再次发起请求,查看接口返回的具体 PHP 错误堆栈信息。
    4. 查看 runtime/log/ 目录下的最新日志排查根本原因。
    5. 修复问题后,将 APP_DEBUG = false 还原并重启 Swoole。

Nginx 错误日志排查

若怀疑是 Nginx 自身引发的 500 错误,可查看 Nginx 错误日志定位:

bash
tail -n 100 /www/wwwlogs/你的域名.error.log

承信租多门店租赁商城系统官方文档