CentOS 上 Apache 日志报错的原因非常多,需要结合具体错误内容才能准确判断。下面我先按常见类型给你梳理一下,你可以对照自己的日志;如果你愿意把具体报错行贴出来,我可以精确分析。
日志示例
(13)Permission denied: AH00035: access to / denied
原因
/var/www/html 目录或文件权限不对解决
chown -R apache:apache /var/www/html
chmod -R 755 /var/www/html
# 如果是 SELinux
setsebool -P httpd_can_network_connect 1
restorecon -Rv /var/www/html
日志示例
AH00072: make_sock: could not bind to address [::]:80
原因
解决
systemctl stop nginx
systemctl restart httpd
日志示例
AH00526: Syntax error on line 12 of /etc/httpd/conf.d/xxx.conf
解决
httpd -t
根据提示修改配置。
日志示例
AH00112: DocumentRoot [/www/html] does not exist
解决
httpd.conf 中的 DocumentRoot日志示例
Failed loading /usr/lib64/php/modules/xxx.so
原因
解决
yum install php php-common
日志示例
SELinux is preventing httpd from read access
解决
setenforce 0 # 临时
# 或正确打标签
semanage fcontext -a -t httpd_sys_content_t "/data/www(/.*)?"
restorecon -Rv /data/www
tail -n 50 /var/log/httpd/error_log
httpd -t
systemctl status httpd
你可以直接贴:
如果你愿意,把具体报错复制过来,我可以直接帮你一步步修好 ✅