【发布时间】:2012-11-22 03:36:04
【问题描述】:
我有一个 IIS 服务器,它通过 fastcgi 为 PHP 提供服务。
当错误日志文件由 IIS_IUSRS 组(IIS 用户正在运行的组)中的用户以外的用户写入时,IIS 将无法写入该文件,并且 PHP 调用 error_log() 会导致 500 错误。 (至少这是我的猜测,好像我删除了日志文件,错误消失并且重新创建了日志文件)。
无论如何我可以阻止 500 错误的发生吗?
编辑:需要明确的是,我知道我可以通过停止记录、记录到事件日志或其他位置等来阻止这种情况,但这不是我的意思。我的意思是我只是想防止 500 错误,我不太关心我的系统无法记录它应该在尝试时破坏站点。这正是它可能发生的最糟糕的行为。我只是希望 500 错误不会发生并且网站继续工作。
【问题讨论】:
-
除了 IIS 用户(PHP 在其下运行)之外,哪个用户会写入 error_log?在我看来,多个角色正在尝试写入该文件。其他哪些应用程序/用户正在写入 error_log 文件?
-
有一个运行 PHP 的 cron 作业(或计划任务或任何 Windows 调用这些东西)也记录。我知道这是根本原因,正如我试图强调的那样,我不需要针对这种个别情况进行修复......我想知道如何防止 error_log 能够发出 500 错误,为用户关闭网站。这是一个日志功能,因此它无法写入日志文件,不应导致用户无法使用该网站。
标签: php iis permissions