【发布时间】:2017-08-25 05:41:49
【问题描述】:
使用 php5.6(遗留代码库)、apache、ubuntu16。
phpinfo() 说:
log_errors 已开启
error_log = /var/log/apache2/php_errors.log
display_errors 开启时有输出。
但是/var/log/apache2/ 不包含php_errors.log 文件。
已重启 apache (/etc/init.d/apache2 restart)。
log_errors_max_len 是1024。
ls -ld /var/log/apache2
drwxr-x--- 2 root adm 4096 Mar 30 18:47 apache2
ls -l /var/log/apache2
-rw-r----- 1 root adm 0 Mar 30 06:25 access.log
-rw-r----- 1 root adm 5967 Mar 30 01:47 access.log.1
-rw-r----- 1 root adm 11618 Mar 31 04:07 error.log
-rw-r----- 1 root adm 11742 Mar 30 06:25 error.log.1
我错过了什么?
【问题讨论】:
-
Apache2?如果是这样,您的虚拟主机可能会指定 PHP 错误/警告/等的其他日志文件位置。是输出。检查
/var/log/apache2/*-error.log -
你是对的!有没有我可以添加的指令来分离 php 错误日志?
-
试试
error_log=syslog,如果它有效,那么它是一个写权限问题 -
事实上,
phpinfo()应该显示 两个 值(“本地值”和“主值”),只要不同,第一个就是有效的值。您可能还需要将 PHP 作为 Apache 模块运行才能登录到/var/log/apache。