輸出php錯(cuò)誤日志的方法:1、修改php-fpm.conf中的catch_workers_output和error_log配置;2、修改php.ini配置文件;3、重啟php-fpm。
本文操作環(huán)境:windows10系統(tǒng)、php 7&&nginx 1.14、thinkpad t480電腦。
我們都知道nginx是一個(gè)web服務(wù)器,因此nginx的access日志只有對(duì)訪問(wèn)頁(yè)面的記錄,而不會(huì)有php 的 error log信息。nginx把對(duì)php的請(qǐng)求發(fā)給php-fpm fastcgi進(jìn)程來(lái)處理,默認(rèn)的php-fpm只會(huì)輸出php-fpm的錯(cuò)誤信息,在php-fpm的errors log里也看不到php的errorlog。
出現(xiàn)這種情況的原因是php-fpm的配置文件php-fpm.conf中默認(rèn)是關(guān)閉worker進(jìn)程的錯(cuò)誤輸出的,并且直接把他們重定向到/dev/null,所以我們?cè)趎ginx的error log 和php-fpm的errorlog都看不到php的錯(cuò)誤日志。
但是這樣的話我們調(diào)試起來(lái)就會(huì)很痛苦,那么我們?cè)撊绾谓鉀Q這個(gè)問(wèn)題呢?下面就讓我們一起來(lái)看看吧!
1、修改php-fpm.conf中配置 沒(méi)有則增加
catch_workers_output = yes error_log = log/error_log
2、修改php.ini中配置,沒(méi)有則增加
log_errors = On error_log = "/usr/local/lnmp/php/var/log/error_log" error_reporting=E_ALL&~E_NOTICE
3、重啟php-fpm
當(dāng)PHP執(zhí)行錯(cuò)誤時(shí)就能看到錯(cuò)誤日志在"/usr/local/lnmp/php/var/log/error_log"中了。
推薦學(xué)習(xí):php培訓(xùn)