Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP未写入错误日志_Php_Error Handling - Fatal编程技术网

PHP未写入错误日志

PHP未写入错误日志,php,error-handling,Php,Error Handling,像这样设置文件结构 mainDirectory -app --logs ---errors.log -file.php 在file.php的内部 然后我试着稍后输出这样的结果 error_log( print_r($response, TRUE) ); 然而,它只是转储到控制台。然后我尝试了各种检查,比如 if( file_exists( "logs/errors.log" ) ) { echo 'yup'; } else { echo 'nope'; } 每一次都不是 我

像这样设置文件结构

mainDirectory
-app
--logs
---errors.log
-file.php
在file.php的内部

然后我试着稍后输出这样的结果

error_log( print_r($response, TRUE) );
然而,它只是转储到控制台。然后我尝试了各种检查,比如

if( file_exists( "logs/errors.log" ) ) {
    echo 'yup';
}
else {
    echo 'nope';
}
每一次都不是

我是不是漏掉了什么明显的东西


谢谢。

我猜您遇到了权限问题。我在OSX Sierra上运行Apache,我的日志文件存储在/var/log中。如果我尝试下面的行,我会得到一个权限拒绝错误

您可以考虑为Error日志选择一个位置,您确信Apache已经允许写入/like /tMP。


在使用ini\u设置之前,请尝试使用file\u put\u contents测试目录的权限。ini\u设置可能有点简洁。

php服务是否有权限写入日志目录?嗯,不确定,您的意思是文件可写吗?请看这里:如果无法写入日志,则不会创建错误日志。使用应用程序目录中的ls-dl日志检查。drwxr-xr-x 3 thatryan staff 102 Aug 15 09:02 log/返回的就是这些日志
if( file_exists( "logs/errors.log" ) ) {
    echo 'yup';
}
else {
    echo 'nope';
}
file_put_contents('/var/log/apache2/errors2.log', 'Hello world');
ini_set("error_log", "/tmp/errors.log");