php 错误日志配置

php 错误日志配置
mkdir /logs/php; chown -R www:www /logs/php
php.ini

1
2
3
4
5
6
7
8
; 错误日志
log_errors = On
; 显示错误
display_errors = Off
; 日志路径
error_log = "/data/logs/php/error_log"
; 错误等级 这个要参考一下91
error_reporting = E_ALL&~E_NOTICE

#这些web2 还要改进一下
php-fpm.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[global]
; php-fpm pid文件
pid = /usr/local/php/var/run/php-fpm.pid
; php-fpm 错误日志路径
error_log =/logs/php/php-fpm.log
; php-fpm 记录错误日志等级
log_level = notice
[www]
; 记录错误到php-fpm的日志中
;catch_workers_output = yes
; 慢日志
slowlog = var/log/slow.log
; 关闭打印日志
php_flag[display_errors] = off
; 错误日志
php_admin_value[error_log] = /usr/local/php/var/log/www.log
; 记录错误
php_admin_flag[log_errors] = on
; 内存使用量
php_admin_value[memory_limit] = 32M

注意
如果错误日志没有写入到文件,查看www用户对 php_admin_value[error_log] 的路径是否有写入权限
其他
php_flag 修改 php.ini 中的配置 开关形式On或Off 可以被 ini_set 修改
php_value 修改 php.ini 中的配置 value形式 可以被 ini_set 修改
php_admin_flag 修改 php.ini 中的配置 开关形式On或Off 不可以被 ini_set 修改
php_admin_value 修改 php.ini 中的配置 value形式 不可以被 ini_set 修改
http://ju.outofmemory.cn/entry/210311
***********************华丽*****************************************************************************
其它 20161101
开发的时候,基本上都会把display_errors,error_reporting开启,有助于提高开发效率,上线后,基本上都会关掉页面报错信息,在把报错信息,放到文件中。
一,php-fpm的error_log配置
1,修改php.ini
display_errors = Off //改为off,页面访问时就不会出现报错信息了
2,修改php-fpm配置文件

1
2
3
;php_flag[display_errors] = off
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on

重启php-fpm,在这里要注意,php-fpm的配置会替换php.ini中的配置,display_errors也可以在php-fpm中配置。这样页面上就不会出现报错信息,报错信息被记录到了文件中
线上我是配置的是

1
error_log = /php/php-fpm.log

二,命令行下的error_log配置,修改php.ini

1
2
3
display_errors = Off
log_errors = On
error_log = /var/log/cron/error.log

命令行下,是不调用php-fpm的配置的,所以我们只能修改php.ini的内容,修改后,不用重启php。执行命令后,错误信息,会被写到error.log文件中,这种情况适合crontab的php脚本