Nginx 和 fcgiwrap,將 perl 錯誤記錄到錯誤日誌中

Nginx 和 fcgiwrap,將 perl 錯誤記錄到錯誤日誌中

這與這個問題類似,但沒有得到回應: 如何透過 fcgiwrap/nginx 調試 CGI

如何讓 perl 錯誤自動放入 nginx 錯誤日誌中?現在,當出現任何 perl 錯誤時,錯誤日誌中會出現以下訊息:

2014/05/11 22:43:48 [error] 1730#0: *5 connect() failed (111: Connection refused) while connecting to upstream, client: localhost, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost"

這對於調試來說完全沒用。我可以使用 CGI::Carp qw{fatalsToBrowser} 之類的東西,但這不是最佳選擇。最好將其記錄到伺服器端文件中。

答案1

你可以用這個解決方案將 STDOUT 和 STDERR 傳送到您有權寫入的任何日誌文件,包括 nginx error.log。儘管將其發送到不同的文件可能會更有幫助。如果您只需要 STDERR 輸出,只需刪除 STDOUT 條目即可。

相關內容