Jus*_*lys 20 php apache logging
PHP通过CLI成功将错误记录到/var/log/php_errors.log.
但是apache + php不会记录错误.
[bla@notebook ~]$ apachectl -v
Server version: Apache/2.2.17 (Unix)
Server built: May 19 2011 03:15:39
[bla@notebook ~]$ php -v
PHP 5.3.6 with Suhosin-Patch (cli) (built: Mar 23 2011 13:28:00)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
Run Code Online (Sandbox Code Playgroud)
在php.ini我有:
display_errors = On
error_reporting = E_ALL | E_STRICT
log_errors = On
error_log = php_errors.log
Run Code Online (Sandbox Code Playgroud)
在httpd.conf中:
ErrorLog "/var/log/httpd/error_log"
Run Code Online (Sandbox Code Playgroud)
权限:
[bla@notebook /]$ ls -la /var/log/httpd/
-rwxrwxr-x 1 root root 133351 21.11.2011 11:18 access_log*
-rwxrwxr-x 1 root http 1307 21.11.2011 11:18 error_log*
[bla@notebook /]$ ls -la /var/log/php_errors.log
-rwxrwxr-x 1 root http 521 14.11.2011 17:31 /var/log/php_errors.log*
Run Code Online (Sandbox Code Playgroud)
如您所见,Apache守护程序具有写入日志文件的权限.
在/var/log/php_errors.log和/ var/log/httpd/error_log中,Apache或PHP仍然没有错误.
更新1.
在php.ini中更改了这一行:
error_log = php_errors.log
Run Code Online (Sandbox Code Playgroud)
完整路径:
error_log = /var/log/php_errors.log
Run Code Online (Sandbox Code Playgroud)
权限还可以.但是,如果有人也遇到问题,您可以调试日志文件0777的设置权限或更改文件所有者.
Apache和CLI通常有两个单独的php.ini文件 - 你确定你正在查看正确的文件吗?
编辑:
我能想到的另外2个选项:
http用户组中的用户写入日志文件 - 可能有一些类似suphp的行为,当你的脚本通过web访问时,它是用/作为用户名来执行的.所有者(脚本的文件所有者) - 尝试更改它.| 归档时间: |
|
| 查看次数: |
53849 次 |
| 最近记录: |