PHP错误日志如何记录文件位置

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

十余年的长岭网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。网络营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整长岭建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“长岭网站设计”,“长岭网站推广”以来,每个客户项目都认真落实执行。

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

    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"
[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\\nStack trace:\\n#0 /home/d139/var/aspire-he-admin/webroot/api.php(37): 
VersionManage::getTxlVersionUpgradeStatus(Array)\\n#1 {main}\\n  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编程(视频)


标题名称:PHP错误日志如何记录文件位置
当前链接:http://hbruida.cn/article/cpgccc.html