华为云ECS服务器内部错误_网站500错误解决
华为云ECS 做网站500错误,虚拟主机通常在面板有"错误日志"或"PHP 日志"入口,不用 SSH 也能看。开启 PHP display_errors 临时显示错误(生产环境用完关掉),访问出错页面就能看到具体错误信息,比猜原因快 10 倍。
权限和资源问题:PHP 文件权限 644、目录 755、属主正确,PHP 无法读取文件会 500;session 目录不可写导致登录 500;上传目录不可写导致上传 500;磁盘满导致无法写日志和临时文件 500(df -h 看磁盘);内存不足导致 PHP 进程被 kill(free -m 看内存,dmesg 看 OOM)。
参考(500错误排查命令): ``` # 开启PHP错误显示(临时,.user.ini) display_errors = On error_reporting = E_ALL log_errors = On error_log = /www/wwwroot/域名/error.log
# PHP错误日志 tail -50 /www/wwwroot/域名/error.log # 或PHP-FPM日志 tail -50 /var/log/php-fpm/error.log
# Nginx错误日志 tail -50 /var/log/nginx/error.log # Apache错误日志 tail -50 /var/log/httpd/error_log
# 资源检查 free -m # 内存 df -h # 磁盘 df -i # inode top # 进程CPU内存
# 数据库连接测试 mysql -u用户名 -p密码 -h localhost -e "SHOW DATABASES;"
# 测试源站 curl -I -x 127.0.0.1:80 http://域名/ curl -v http://域名/ # 详细输出 ```
排查完用 ping 检测确认。修复后浏览器访问返回 200,错误日志没有新的 fatal error,所有功能(登录、上传、搜索)正常。如果是代码错误,修复后测试相关流程;如果是配置错误,确认所有页面不受影响。关闭 display_errors,生产环境不要显示错误信息。
Nginx 500 专项:Nginx 500 大多是 PHP-FPM 返回的错误。看 /var/log/php-fpm/error.log 和网站的 PHP 错误日志。PHP-FPM 未启动会返回 502 不是 500,注意区分。fastcgi 配置错误(脚本路径不对)也会 500,检查 fastcgi_param SCRIPT_FILENAME。

更新时间:2026-08-26 20:41:28
上一篇:景安虚拟主机文件权限_PHP切换