温馨提示×

linux lnmp为什么报错

小樊
44
2026-09-15 21:01:32
栏目: 智能运维

“Linux LNMP 报错”是一个比较宽泛的问题,因为 LNMP(Linux + Nginx + MySQL/MariaDB + PHP) 在任何一环都可能出错。下面我按常见报错类型 + 原因 + 排查思路给你总结一下,你可以对照看看属于哪一种。


一、Nginx 相关报错

1. Nginx 启动失败

systemctl start nginx
Job for nginx.service failed

常见原因:

  • 端口被占用(如 80 被 Apache 占用)
  • 配置文件语法错误
  • 网站 root 目录不存在

排查:

nginx -t

查看配置错误位置。


2. 403 Forbidden

页面访问显示:

403 Forbidden

原因:

  • 网站目录没有权限
  • index 文件不存在(index.php / index.html)
  • Nginx 用户(www / nginx)无权访问

解决:

chown -R www:www /网站目录
chmod -R 755 /网站目录

3. 404 Not Found(PHP 文件)

访问 index.php 变成下载或 404

原因:

  • Nginx 未配置 PHP 解析
  • fastcgi_pass 地址错误

示例配置:

location ~ \.php$ {
    fastcgi_pass   unix:/run/php-fpm.sock;
    fastcgi_index  index.php;
    include        fastcgi.conf;
}

二、PHP / PHP-FPM 报错

1. PHP-FPM 启动失败

systemctl start php-fpm

常见原因:

  • sock 文件权限不对
  • 监听端口冲突
  • php.ini 错误

查看:

php-fpm -t
journalctl -xe

2. 页面空白 / 500 错误

原因:

  • PHP 代码错误
  • 内存超限
  • 禁用函数

排查:

tail -f /var/log/php-fpm/error.log
tail -f /var/log/nginx/error.log

三、MySQL / MariaDB 报错

1. 无法启动 MySQL

systemctl start mysqld

常见原因:

  • 数据目录权限错误
  • 磁盘空间不足
  • 配置文件错误

查看日志:

cat /var/log/mysqld.log

2. 连接数据库失败

PHP 报错:

Access denied for user 'root'@'localhost'

原因:

  • 密码错误
  • 用户权限不足
  • 使用 socket 而非 IP

四、LNMP 一键包常见报错(如 lnmp.org)

1. 安装中断

  • 网络问题(下载源码失败)
  • 内存不足(< 1G 易失败)

2. 重启后服务不自动启动

systemctl enable nginx
systemctl enable mysqld
systemctl enable php-fpm

五、快速自检清单 ✅

你可以按顺序检查:

nginx -t
systemctl status nginx
systemctl status php-fpm
systemctl status mysqld
df -h
free -h

六、建议你这样补充问题(方便精准定位)

如果你愿意,可以把具体报错内容发出来,例如:

  • 报错截图或命令输出
  • 使用的是哪种 LNMP(源码 / 一键包 / Docker)
  • 系统版本(CentOS / Ubuntu)
  • 访问网页时具体提示

我可以直接帮你精准定位并给解决方案

0