您好!欢迎访问否玩代码!
My title page contents
广告位

Apache启动成功但页面报错?这5个排查方向解决你90%的问题

栏目: 日期: 浏览:118

Apache开启了但未出现报错情况, 然而页面却依旧呈现出502、403或者空白态势——这可是让站长极为头疼的问题当中的一个。接下来直接展开拆解排查思路, 从而能够快速对问题进行定位。

1. 检查端口占用与虚拟主机配置

Apache默认对80或者443端口进行监听, 要是被诸如Nginx、IIS等其他Web服务占用, 就算Apache启动成功了, 请求也会被拦截住。

操作:

netstat -anp | grep :80

要是察觉到并非Apache的进程占据使用, 那就去改动httpd.conf, 再或者是sites-enabled/里的虚拟主机文件, 把端口变更为8080, 并且要进行反向代理的配置, 不然就停下产生冲突的服务。

2. 确认DocumentRoot路径权限

Apache开启之后, 要是不存在读取网站相关文件的权限, 那么就会予以回返403 Forbidden。

检查:

ls -ld /var/www/html

要保证目录的所有者为www-data(适用于Debian/Ubuntu系统), 或者是apache(此为CentOS系统下的情况), 而且目录权限最少得是755。

修复:

chown -R www-data:www-data /var/www/html
chmod -R 755 /var/www/html

3. 检查PHP-FPM或后端服务是否运行

假定页面属于PHP范畴、倘若其依靠代理才能运作, 这时Apache自身不存在差错, 然而当后端服务出现故障时, 便会呈现502、504相关报错。

操作:

systemctl status php8.1-fpm
systemctl status mysql

如果未启动,启动它们并重启Apache:

systemctl restart php8.1-fpm
systemctl restart apache2

4. 开启Apache错误日志与详细报错

大部分问题在错误日志里写得清清楚楚。

命令:

tail -f /var/log/apache2/error.log

被常常看见的日志关键词有, Permission denied(权限方面的错误提示), File does not exist(路径出现错误的表述), Connection refused(表示后端服务没有开启的提示)。

5. 检查.htaccess与Rewrite规则

.htaccess当中存在着错误的语法, Apache将会直接返回500 Internal Server Error。

排错之办法: 暂且将.htaccess重新命名成为.htaccess.bak, 接着去刷新页面。要是恢复至正常状态, 那就表明是规则书写错误, 需一步步去排查语法。

快速总结

端口被占 → 改端口或停冲突服务

目录权限不对 → 修复所有者与权限

后端服务未运行 → 启动PHP-FPM/MariaDB

没有去看错误日志, 而是选择先通过tail -f来查看日志。

.htaccess语法错 → 重命名后逐个恢复

否玩代码编辑网址https://www.fouwan.com