视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
PHP错误日志如何记录文件位置
2020-11-02 18:29:35 责编:小采
文档


PHP错误日志记录文件位置的方法:1、通过模块加载的方式,代码为【php程序中配置 > httpd.conf > php.ini中配置】;2、通过【CGI/fastCGI】模式,代码为【ini_get("error_log")】。

PHP错误日志记录文件位置的方法:

1、确定web服务器 ( IIS, APACHE, NGINX 等) 以哪一种方式支持PHP,通常是有下面2种方式

2、通过模块加载的方式

php程序中配置 > httpd.conf > php.ini中配置

3、通过 CGI/fastCGI 模式

php程序中配置 > php.ini中配置    
ini_get("error_reporting");
ini_get("log_errors");
ini_get("error_log");

输出:

'22527'
'1'
'/usr/local/php7.2.0/var/log/php_errors.log'
如果log_errors = On

/usr/local/php7.2.0/var/log/php_errors.log文件不存在,或无法创建,写入,则php错误日志写到apache ErrorLog指令指定的文件

[liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ sudo ps -ef |grep httpd
apache 670 2501 0 11:24 ? 00:00:00 /usr/local/httpd-2.4.20/bin/httpd -k graceful
[liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ cd /usr/local/httpd-2.4.20/conf/conf.d
[liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ sudo grep -anR --color '1.aspire-he-admin' ./
./aspire_he_admin.conf:29: ServerName 1.aspire-he-admin
[liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ sudo vim +29 /usr/local/httpd-2.4.20/conf/conf.d/aspire_he_admin.conf
<VirtualHost *:80>
 DocumentRoot "/home/d139/var/aspire-he-admin/webroot/"
 ServerName 1.aspire-he-admin
 SetEnv SERVER_ENVERONMENT_PARAM 2
 DirectoryIndex index.php index.html
 php_value post_max_size 100M
 CustomLog "| /usr/sbin/cronolog /home/d139/logs/%Y-%m-%d-%H-he-admin_access.log" combined
 ErrorLog "| /usr/sbin/cronolog /home/d139/logs/%Y-%m-%d-%H-he-admin_error.log"
</VirtualHost>
[liuchao@GD-NT-0911QAR1CF_vm1-19.32 module]$ sudo tail -f /home/d139/logs/2019-03-13-10-he-admin_error.log
[Wed Mar 13 10:02:01.194757 2019] [php7:error] [pid 17673] [client 127.0.0.1:50312] 
PHP Fatal error: Uncaught Error: Call to undefined method VersionManage::
getDb1() in /home/d139/var/aspire-he-admin/module/VersionManage.class.php:82
Stack trace:
#0 /home/d139/var/aspire-he-admin/webroot/api.php(37): 
VersionManage::getTxlVersionUpgradeStatus(Array)
#1 {main}
 thrown in /home/d139/var/aspire-he-admin/module/VersionManage.class.php on line 82

如果php.ini中log_errors= On,据官方的说法,那么必须指定error_log文件,如果没指定或者指定的文件没有权限写入,那么照样会输出到正常的输出渠道,那么也就使得display_errors这个指定的Off失效,错误信息还是打印了出来。将log_errors = Off就行了。

相关学习推荐:php编程(视频)

下载本文
显示全文
专题