首頁 >運維 >Nginx >Nginx中使用PHP-FPM時記錄PHP錯誤日誌怎麼配置

Nginx中使用PHP-FPM時記錄PHP錯誤日誌怎麼配置

PHPz
PHPz轉載
2023-05-15 08:58:121459瀏覽

nginx與apache不一樣,在apache中可以直接指定php的錯誤日誌,那樣在php執行中的錯誤訊息就直接輸入到php的錯誤日誌中,可以方便查詢。

在nginx事情就變成這樣:nginx只對頁面的存取做access記錄日誌了。不會有php的error log 資訊。 nginx把對php的請求發給php-fpm fastcgi進程來處理,預設的php-fpm只會輸出php-fpm的錯誤訊息,在php-fpm的errors log裡也看不到php的errorlog。

原因是php-fpm的設定檔php-fpm.conf中預設是關閉worker程序的錯誤輸出,直接把他們重定向到/dev/null,所以我們在nginx的error log 和php- fpm的errorlog都看不到php的錯誤日誌。

所以我們要進行如下的設定就能查看nginx下php-fpm不記錄php錯誤日誌的方法:

1,修改php-fpm.conf中的配置,如果沒有請增加:

複製程式碼 程式碼如下:

#[global]
; note: the default prefix is /usr/local/php/var
error_log = log/php_error_log
[www]
catch_workers_output = yes

2.修改php.ini中設定,沒有則增加:

#複製程式碼 程式碼如下:

log_errors = on
error_log = "/usr/local/php/var/log/error_log"
error_reporting=e_all&~e_notice

#3.重啟php-fpm

當php執行錯誤時就能看到錯誤日誌在”/usr/local/lnmp/php/var/log/php_error_log”中了

如果出現:

複製程式碼 程式碼如下:

[root@localhost etc]# service php-fpm restart
gracefully shutting down php -fpm . done
starting php-fpm [17-apr-2014 18:40:52] error: [/usr/local/php/etc/php-fpm.conf:5] unknown entry 'catch_workers_
[17-apr-2014 18:40:52] error: failed to load configuration file '/usr/local/php/etc/php-fpm.conf'
[17-apr-2014 18:40:52] error: fpm initialization failed
 failed

那麼請在第一步的時候,認真將設定寫入相對應的群組中,不然就出現上面的:

複製程式碼 程式碼如下:

error: [/usr/local/php/etc/php-fpm.conf:5] unknown entry 'catch_workers_output'

最後看看效果:
Nginx中使用PHP-FPM時記錄PHP錯誤日誌怎麼配置

Nginx中使用PHP-FPM時記錄PHP錯誤日誌怎麼配置

以上是Nginx中使用PHP-FPM時記錄PHP錯誤日誌怎麼配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除