PHP error_log方法不會將錯誤寫入自定義錯誤日誌文件。它只會寫/var/log/apache2/php_error.logPHP error_log方法不會將錯誤寫入我的錯誤日誌文件
下面是在日誌記錄設置我php.ini
:
error_reporting = E_ALL & ~E_DEPRECATED & ~E_NOTICE
display_errors = Off
log_errors = On
log_errors_max_len = 0 ; also tried with 9999999
error_log = /var/log/apache2/php_errors.log
PHP寫了錯誤的常規Apache的錯誤日誌(/var/log/apache2/error.log
),而不是我上面指定的那個。
事情我已經嘗試過:
- 我停下來改變php.ini文件
- 文件
/var/log/apache2/php_errors.log
是777個權限和文件存在後重新開始的Apache。 - 沒有其他重寫的php.ini文件。 (有/etc/php5/cli/php.ini,但我沒有使用cli)。
- 有沒有其他的error_log = XXX設置的進一步下降,這可能會否決第一個
- 的phpinfo的php.ini文件()說的error_log = /var/log/apache2/php_errors.log(即正確的文件),這兩個地方下的價值和主值
- 測試腳本我使用生成的錯誤不包含任何的ini_set調用
(FYI:我使用的Apache/2.2.17和PHP/5.3。 Ubuntu 11.04上的5-1ubuntu7.2)
我在做什麼錯?
你試圖改變文件名以一些別的嗎?或者嘗試其他文件夾? – Olli
檢查php.ini文件是否加載(查看phpinfo()函數的輸出) – classic
感謝Olli,我將其更改爲/usr/php_errors.log,現在它可以工作! –