在 Debian 上排查 Apache 日志报错,一般按下面几步来就行:
Debian 下 Apache(通常是 apache2)日志默认在:
/var/log/apache2/
常见文件:
access.log:访问日志error.log:错误日志(重点看这个)other_vhosts_access.log:虚拟主机访问日志如果你用了虚拟主机,也可能在:
/var/log/apache2/域名.error.log
最常用:
sudo tail -f /var/log/apache2/error.log
只看最近 50 行:
sudo tail -n 50 /var/log/apache2/error.log
(13)Permission denied: /var/www/html/xxx
原因:
解决:
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
AH00526: Syntax error on line xx of xxx.conf
DocumentRoot '/var/www/xxx' does not exist
说明虚拟主机配置路径写错了。
AH00558: apache2: Could not reliably determine the server's fully qualified domain name
不影响运行,可忽略,或设置:
ServerName localhost
AH01797: client denied by server configuration
常见原因:
<Directory> 没允许访问Require all grantedPHP Fatal error: ...
看是不是:
sudo apache2ctl configtest
有 Syntax OK 就正常。
sudo systemctl restart apache2
看状态:
sudo systemctl status apache2
你可以直接把 error.log 里的报错内容 贴出来,例如:
[Wed xxx] [core:error] [pid 1234] ...
我可以帮你精确定位是:
要不要你先贴一段报错?