温馨提示×

linux lamp常见错误有哪些

小樊
48
2026-10-06 15:54:45
栏目: 智能运维

在 Linux 下搭建或使用 LAMP(Linux + Apache + MySQL/MariaDB + PHP) 环境时,常见错误主要集中在服务未启动、权限问题、配置错误、版本不兼容等方面。下面按模块总结常见错误及排查思路。


一、Apache 常见错误

1. Apache 无法启动

现象

systemctl start httpd
Job for httpd.service failed

常见原因

  • 端口 80/443 被占用
  • 配置文件语法错误
  • SELinux 限制

排查

journalctl -xe
apachectl configtest
netstat -tunlp | grep :80

2. 403 Forbidden

原因

  • 目录权限不足
  • DocumentRoot 配置错误
  • SELinux 未放行

解决

chmod 755 /var/www/html
chown -R apache:apache /var/www/html
setsebool -P httpd_can_network_connect 1

3. 虚拟主机不生效

常见错误

  • 未启用 vhost 配置
  • ServerName 冲突

检查

httpd -S

二、MySQL / MariaDB 常见错误

4. 无法登录 MySQL

ERROR 1045 (28000): Access denied for user 'root'@'localhost'

原因

  • 密码错误
  • 权限表异常

解决

systemctl stop mariadb
mysqld_safe --skip-grant-tables &

5. MySQL 服务启动失败

原因

  • 数据目录权限错误
  • 磁盘空间不足
  • 配置文件错误
journalctl -u mariadb
df -h

6. 远程无法连接数据库

原因

  • 未授权远程用户
  • 防火墙未放行 3306
GRANT ALL ON *.* TO 'user'@'%' IDENTIFIED BY 'pass';
firewall-cmd --add-port=3306/tcp --permanent

三、PHP 常见错误

7. PHP 页面直接显示源码

原因

  • Apache 未加载 PHP 模块
  • 文件后缀错误(.php)

检查

httpd -M | grep php

8. PHP 与 MySQL 不兼容

现象

Call to undefined function mysqli_connect()

解决

yum install php-mysqlnd
# 或
apt install php-mysql

9. 上传文件失败

原因

  • upload_max_filesize 过小
  • 目录无写权限
upload_max_filesize = 20M
post_max_size = 20M

四、权限与系统问题

10. SELinux 导致访问异常

setenforce 0   # 临时关闭

永久:

vi /etc/selinux/config
SELINUX=disabled

11. 防火墙阻止访问

firewall-cmd --list-all
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent

五、综合排查顺序(推荐)

  1. 服务是否运行
    systemctl status httpd mariadb
    
  2. 配置是否有错
    apachectl configtest
    
  3. 查看日志
    tail -f /var/log/httpd/error_log
    tail -f /var/log/mariadb/mariadb.log
    
  4. 权限 & SELinux & 防火墙

如果你愿意,可以告诉我:

  • 使用的 Linux 发行版(CentOS / Ubuntu)
  • 具体报错信息

我可以帮你精准定位问题。

0 踩