在CentOS系統中搭建LNMP(Linux, Nginx, MySQL, PHP)環境時,可能會遇到各種故障。以下是一些常見的故障排查方法:
使用 journalctl
命令查看系統日志,以獲取有關系統事件的詳細信息。例如,要查看最近的日志條目,可以運行:
journalctl -n 100
這將顯示最近的100條日志條目。
使用 ps
命令查看正在運行的進程及其狀態。例如,要查看所有進程的狀態,可以運行:
ps aux
使用 ping
和 traceroute
命令檢查網絡連接。例如,要檢查與特定IP地址的網絡連接,可以運行:
ping 8.8.8.8
或者使用 traceroute
命令跟蹤數據包的路徑:
traceroute 8.8.8.8
使用 df
命令檢查磁盤空間使用情況。例如,要查看文件系統的磁盤空間使用情況,可以運行:
df -h
使用 netstat
或 ss
命令檢查網絡連接和監聽端口。例如,要查看所有活動的網絡連接,可以運行:
netstat -tuln
或者使用 ss
命令:
ss -tuln
使用 systemctl
命令檢查系統服務的狀態。例如,要檢查Nginx Web服務器的狀態,可以運行:
systemctl status nginx
使用 lsmod
命令列出已加載的內核模塊。例如,要查看已加載的內核模塊,可以運行:
lsmod
502 Bad Gateway:通常是由于Nginx無法連接到PHP-FPM進程。檢查PHP-FPM日志文件(通常位于 /var/log/php-fpm/www-error.log
)和Nginx錯誤日志(通常位于 /usr/local/nginx/logs/error.log
)。
配置錯誤:檢查Nginx和PHP-FPM的配置文件,確保 fastcgi_pass
指向正確的PHP-FPM監聽地址和端口。
權限問題:確保Nginx和PHP-FPM進程以正確的用戶和組運行。在PHP-FPM配置文件(如 /usr/local/php/etc/php-fpm.conf
)中,檢查 listen.owner
和 listen.group
設置。
查看日志文件:CentOS系統中的日志文件通常位于 /var/log
目錄下。常見的日志文件有 /var/log/messages
、/var/log/secure
、/var/log/httpd
(如果已安裝Apache)、/var/log/mysqld
(如果已安裝MySQL)。
日志輪轉:使用 logrotate
工具來管理日志文件的大小和數量。默認情況下,CentOS已經配置了 logrotate
,但可以根據需要自定義配置文件。
日志監控:使用像 rsyslog
或 syslog-ng
這樣的工具來集中管理和分析日志。這些工具允許你配置日志規則,將日志發送到不同的目標,如文件、遠程服務器等。
日志分析工具:使用ELK Stack(Elasticsearch、Logstash、Kibana)或Splunk等工具進行日志分析和可視化。
通過上述步驟和技巧,可以有效地排查和解決CentOS服務器上的LNMP環境問題,提高服務器的穩定性和可靠性。