温馨提示×

如何解决Linux LNMP常见问题

小樊
54
2025-08-11 02:41:56
栏目: 智能运维

以下是Linux LNMP常见问题的解决方法:

一、服务启动异常

  • Nginx无法启动
    检查配置文件语法:nginx -t,查看是否有路径错误或端口冲突。
    确保防火墙开放80/443端口:ufw allow 80/443
  • MySQL无法启动
    查看错误日志:tail -f /var/log/mysql/error.log,处理权限问题(如mysql.sock权限不足)或配置文件错误。
    修复权限:chown -R mysql:mysql /var/lib/mysql/
  • PHP-FPM异常
    查看日志:tail -f /var/log/php-fpm.log,调整配置参数(如pm.max_children)后重启服务。

二、配置文件错误

  • Nginx 403/502错误
    403错误通常因目录权限不足,需设置:chmod -R 755 /path/to/webroot
    502错误可能是PHP-FPM未运行或端口配置错误,检查fastcgi_pass指向的端口是否与PHP-FPM监听一致。
  • PHP扩展安装失败
    使用包管理器安装依赖:apt-get install php-xxx(Ubuntu)或yum install php-xxx(CentOS),确保编译工具已安装。

三、性能优化

  • MySQL慢查询
    开启慢查询日志:在my.cnf中设置slow_query_log=1,分析日志并添加索引。
    优化配置参数:调整innodb_buffer_pool_size(建议设置为系统内存的50%-70%)。
  • Nginx高并发优化
    调整worker_processes为CPU核心数,增加worker_connections,启用keepalive连接。

四、权限与安全

  • 权限问题
    确保服务运行用户正确(如Nginx用www-data,MySQL用mysql),通过chownchmod设置文件权限。
  • 防火墙与SELinux
    临时关闭防火墙:systemctl stop firewalld(CentOS)或ufw disable(Ubuntu),生产环境需配置规则。
    若启用SELinux,需调整策略:setenforce 0(临时关闭),或配置正确策略。

五、日志与监控

  • 日志分析
    定期查看Nginx、MySQL、PHP-FPM日志,定位错误根源。
  • 监控工具
    使用tophtop监控系统资源,或部署Zabbix、Prometheus等专业监控软件。

参考来源


0