Answers:
默认情况下,/var/log/apache2/error.log
。
可以在中配置/etc/php5/apache2/php.ini
。
error.log.*
文件
检查以下设置php.ini
:
error_reporting = E_ALL | E_STRICT
(如推荐用于php.ini中的开发)error_log = /var/log/php_errors.log
然后手动创建日志文件
touch /var/log/php_errors.log
chown www-data: /var/log/php_errors.log
chmod +rw /var/log/php_errors.log
现在您可以通过这种方式查看PHP错误
tail /var/log/php_errors.log
对我来说,这是一个很好的解决方案。
chmod 640 /var/log/php_errors.log
您还可以为Apache中的每个VirtualHost定义一个特定的错误日志文件。如果您在VirtualHost中定义/etc/apache2/sites-available/
并启用了任何VirtualHost /etc/apache2/sites-enabled
(通过启用sudo a2ensite [your-virtualhost-definition-file]
),则可以通过在VirtualHost配置内添加以下行来更改错误日志:
ErrorLog ${APACHE_LOG_DIR}/[your-vhost]-error.log
如果您有很多虚拟主机,并且想在报告错误的位置进行拆分,这可能会很有用。
另外,您可以通过发出以下命令来实时查看错误日志(如果与默认日志文件不同,则可以使用自己的日志文件):
sudo tail -f /var/log/apache2/error.log
这在进行实时调试时特别有用。
error_log = syslog
在php.ini中注释掉
如果使用Webmin / Virtualmin设置了Apache,则每个VirtualHost都有一个单独的文件夹。
它是
~/logs
每个VirtualHost用户的文件夹。
这是两个文件:
~/logs/access_log
和
~/logs/error_log
所以他们是
/home/onedomain/logs/access_log
/home/onedomain/logs/error_log
/home/anotherdomain/logs/access_log
/home/anotherdomain/logs/error_log
...
等等
要查看每个特定域的日志文件,请以该主机名的VirtualHost所有者用户身份登录并运行
tail -f ~/logs/error_log