![](/img/trans.png)
[英]PHP Error logging on Apache HTTPD on Windows: What is wrong with this configuration that it is not logging errors?
[英]no php error logging on apache
好像我无法在我的服务器上运行错误日志工作,我已经设置了我的虚拟主机,就像这里的建议一样 。
<VirtualHost *:80>
ServerAdmin admin@server.com
DocumentRoot /var/www/html
ServerName www.server.com
ServerAlias server.com
LogFormat combined
ErrorLog /var/log/apache2/server.com-error_log
TransferLog /var/log/apache2/server.com-access_log
php_flag log_errors on
php_flag display_errors off
php_value error_reporting 6143
php_value error_log /var/log/apache2/server.com-php-error.log
...
</VirtualHost>
正确写入访问和错误日志,创建php错误日志文件并具有与其他两个日志文件相同的权限。
我还尝试根据本指南在php.ini,.htaccess文件和脚本中设置日志记录。
php -v
PHP 5.2.10-2ubuntu6.10 with Suhosin-Patch 0.9.7 (cli) (built: May 2 2011 23:24:44)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
还有其他我可以检查的地方吗? vHost配置在其他服务器上完美运行。
可能是由于/var/log/apache2
权限。 考虑到PHP作为apache模块运行,因此它作为www-data
用户运行(至少在ubuntu中)。 因此,您需要此用户至少具有对/var/log/apache2
执行权限以及对日志文件的写入权限,或者更好的是对/var/log/apache2
执行和写入权限(以便能够创建新的日志文件)如果需要的话)。
所以你可以将php日志保存到另一个文件夹,或者让它由www-data
用户写入(在后一种情况下,你也可以编辑/etc/logrotate.d/apache2
文件,以便旋转后新的日志文件由www-data
用户。
输入你的php脚本:
error_reporting(E_ALL);
ini_set('display_errors', true);
比你得到你的错误和警告打印
尝试PHP日志的默认位置:/var/log/php.log
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.