在CentOS系統上排查Nginx故障可以按照以下步驟進行:
檢查Nginx進程: 使用以下命令檢查Nginx進程是否在運行:
systemctl status nginx
或
ps aux | grep nginx
檢查監聽端口: 確認Nginx是否在正確端口上監聽:
netstat -tulnp | grep nginx
查看Nginx日志:
Nginx的錯誤日志通常位于 /var/log/nginx/error.log
,查看日志可以幫助定位問題:
tail -100f /var/log/nginx/error.log
檢查配置文件: 使用以下命令檢查Nginx配置文件的語法:
nginx -t
檢查端口沖突: 使用以下命令查找端口占用情況:
netstat -tuln | grep <端口號>
如果端口被占用,可以修改Nginx配置文件中的端口號或停止占用該端口的程序。
檢查權限問題:
確保Nginx用戶有權訪問所有必要的文件和目錄。例如,如果Nginx用戶是 www-data
,可以使用以下命令更改文件權限:
chown -R www-data:www-data /path/to/directory
檢查后端服務: 如果Nginx作為反向代理,確保后端服務器(如PHP-FPM)正常運行??梢允褂靡韵旅顧z查PHP-FPM狀態:
systemctl status php-fpm
檢查系統日志: 檢查系統日志以獲取更多信息:
dmesg | grep nginx
grep -i nginx /var/log/syslog
使用調試工具:
使用 strace
跟蹤Nginx進程的系統調用,幫助深入分析問題:
sudo strace -p $(pgrep nginx) -e trace=network -s 1000
檢查資源使用: 使用以下命令查看資源使用情況:
ulimit -ass -s