我昨天將我的 Debian7 升級(jí)到 Debian10,并使用 php-fpm (php 7.4) 從 prefork 更改為 mpm_event錯(cuò)誤消息和 error_log 輸出在我的 /apache/error.log 文件中顯示為: 我已經(jīng)替換了文件名、ip 和端口。[Tue May 19 11:26:38.506805 2020] [proxy_fcgi:error] [pid 28334:tid 139811391133440] [client (ip):(port)] AH01071: Got error 'PHP message: PHP Notice: Undefined variable: SQL_ERROR in (file) on line 198PHP message: PHP Notice: Undefined variable: SQL_ERROR in (file) on line 200PHP message: PHP Notice: Undefined variable: SQL_ERROR_MSG in (file) on line 201PHP message: PHP Notice: Undefined variable: SQL_command in (file) on line 202'并且所有錯(cuò)誤都被緩沖,并在同一行上輸出(很難調(diào)試)。php-fpm 使用 www-data 用戶(hù)error.log 對(duì) www-data:www-data 有 640 權(quán)限php-fpm/pool.d/www.conf 得到了 error.log = /var/log/apache2/error.log關(guān)于為什么我沒(méi)有直接在 error.log 文件中獲取錯(cuò)誤日志,您有什么建議嗎?編輯:所有 PHP 配置均來(lái)自全新安裝。
2 回答

www說(shuō)
TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊
我有和你一樣的系統(tǒng),Debian 10,php-fpm 7.3(而不是 7.4),apache2,并且有同樣的問(wèn)題,輸出混亂。
我用一個(gè)小腳本解決了它,手動(dòng)添加換行符 \n 和一個(gè)用于漂亮打印的制表符 \t
#!/bin/sh tail -f "/var/log/apache2/$1" | sed 's/PHP\s/\n\tPHP\s/g'
現(xiàn)在我看到每條消息都在一個(gè)新行上,也有一個(gè)簡(jiǎn)單的縮進(jìn)。你可以給腳本起任何名字,我選擇了 greplog,放置在具有足夠權(quán)限的系統(tǒng)路徑上,并將日志文件名作為參數(shù)傳遞

喵喵時(shí)光機(jī)
TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個(gè)贊
從 Debian 7 升級(jí)到 Debian 10 時(shí),您的 PHP 版本可能已從 5.4 升級(jí)到 7.4。
PHP 7 有許多重大更改,所以我猜您的代碼正在使用一些已刪除的功能/命中引入的語(yǔ)法更改。
- 2 回答
- 0 關(guān)注
- 189 瀏覽
添加回答
舉報(bào)
0/150
提交
取消