温馨提示×

如何在Linux中排查LNMP故障

小樊
56
2025-06-06 17:24:16
栏目: 智能运维

在Linux中排查LNMP(Linux, Nginx, MySQL, PHP)故障,可以按照以下步骤进行:

1. 检查Nginx状态

  • 查看Nginx服务状态
    sudo systemctl status nginx
    
  • 查看Nginx错误日志
    sudo tail -f /var/log/nginx/error.log
    

2. 检查MySQL状态

  • 查看MySQL服务状态
    sudo systemctl status mysql
    
  • 查看MySQL错误日志
    sudo tail -f /var/log/mysql/error.log
    

3. 检查PHP状态

  • 查看PHP-FPM状态(如果使用PHP-FPM):
    sudo systemctl status php-fpm
    
  • 查看PHP错误日志
    sudo tail -f /var/log/php-fpm/error.log
    

4. 检查网络连接

  • 检查服务器是否可达
    ping your_server_ip
    
  • 检查端口是否开放
    sudo netstat -tuln | grep <port>
    
    例如,检查80端口(HTTP)和443端口(HTTPS):
    sudo netstat -tuln | grep 80
    sudo netstat -tuln | grep 443
    

5. 检查文件权限

  • 检查Nginx配置文件权限
    ls -l /etc/nginx/nginx.conf
    
  • 检查PHP文件权限
    ls -l /path/to/your/php/file.php
    

6. 检查SELinux状态(如果启用)

  • 查看SELinux状态
    sestatus
    
  • 临时禁用SELinux(仅用于测试):
    sudo setenforce 0
    

7. 使用调试工具

  • 使用curl检查HTTP响应
    curl -I http://your_server_ip
    
  • 使用telnet检查端口连接
    telnet your_server_ip 80
    

8. 检查系统资源

  • 查看CPU和内存使用情况
    top
    free -m
    
  • 查看磁盘空间使用情况
    df -h
    

9. 检查防火墙设置

  • 查看防火墙状态
    sudo ufw status
    
  • 允许必要的端口
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    

10. 检查日志轮转

  • 查看日志文件是否被轮转
    ls -l /var/log/nginx/access.log*
    ls -l /var/log/mysql/error.log*
    ls -l /var/log/php-fpm/error.log*
    

通过以上步骤,你可以逐步排查LNMP环境中的故障。如果问题依然存在,可以考虑查看更详细的日志信息或寻求社区帮助。

0