PHP错误日志:Won';无法写入指定的文件

PHP错误日志:Won';无法写入指定的文件,php,iis,error-log,Php,Iis,Error Log,在我的WinXP Pro系统上的IIS下运行PHP。我无法轻松调试脚本,因为让PHP写入我指定的错误日志。以下是相关的(我认为)php.ini条目: error_reporting = E_ALL & E_STRICT display_errors = Off log_errors = On error_log = "c:/php5/log/php.log" 错误报告=E_全部&E_严格 显示错误=关闭 日志错误=On 错误\u log=“c:/php5/log/php.log” 我以前在W

在我的WinXP Pro系统上的IIS下运行PHP。我无法轻松调试脚本,因为让PHP写入我指定的错误日志。以下是相关的(我认为)php.ini条目:

error_reporting = E_ALL & E_STRICT display_errors = Off log_errors = On error_log = "c:/php5/log/php.log" 错误报告=E_全部&E_严格 显示错误=关闭 日志错误=On 错误\u log=“c:/php5/log/php.log” 我以前在Windows/DOS上使用过斜杠。在这两种情况下,它都没有写入该目录中的php.log文件。日志文件可由IUSR_SERVERNAME写入,目录可由IUSR_SERVERNAME写入,父目录可由IUSR_SERVERNAME写入。我肯定我错过了一些愚蠢的事情


有什么提示吗?

您在php文件本身中尝试过吗

error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 0);
ini_set('log_errors', 1);
ini_set('error_log', "c:/php5/log/php.log");
更新: 问题是您使用的是按位或,应该在哪里使用按位或

试试这个

var_dump(E_ALL);
var_dump(E_STRICT);
var_dump(E_ALL | E_STRICT);
var_dump(E_ALL & E_STRICT);
输出: 整数(6143)整数(2048)整数(8191)整数(0)

所以基本上你是在写作

error_reporting  =  0
有效地关闭错误报告。
更改php.ini中的&for&an,您应该会没事。

有点忽略了在ini文件中添加的意义,但我会尝试一下。它不应该是error_reporting=E_ALL | E_STRICT而不是error_reporting=E_ALL&E_STRICT吗?&当然,E_ALL和E_STRICT将返回所有零,我想就是这样,非常感谢!当然,它没有记录与初始问题相关的错误,但这是一个我必须解决的安全问题,与错误日志无关。有趣的一点是:我刚刚取消了行的注释,因此初始PHP.ini文件出错。我发现了问题。我更新了我的答案。让我知道进展如何