当Nginx出现故障时,可以按照以下步骤进行排查:
systemctl status nginx(对于使用systemd的系统)或 service nginx status(对于使用init.d的系统)检查Nginx进程状态。ps aux | grep nginx查看Nginx进程是否正在运行。/var/log/nginx/error.log,使用 tail -f /var/log/nginx/error.log实时查看最新错误信息。nginx -t验证配置文件语法是否正确。nginx -T查看完整配置文件,包括引入的子配置。/var/log/nginx/access.log,可以使用 grep命令搜索特定信息,如 grep "404" /var/log/nginx/access.log查找404错误。awk或 sed进行复杂的数据处理,如统计某个IP的访问次数。top、htop、free -h、df -h、iostat -x等命令检查CPU、内存、磁盘I/O和网络带宽使用情况。nginx -t会提示错误信息,根据提示修正配置文件。lsof -i :80(或相应端口号)检查端口占用情况,解决端口冲突问题。ldd $(which nginx)检查Nginx依赖的动态模块或库文件是否存在,如OpenSSL、PCRE等。error_log /var/log/nginx/error.log debug;。gdb进行核心转储分析。通过以上步骤,可以系统地排查Nginx故障,快速定位问题所在,并采取相应的解决措施。