Nginx 和 fcgiwrap,将 perl 错误记录到错误日志中

Bin*_*ntz 5 nginx perl spawn-fcgi

这类似于这个问题,没有得到回应: How to debug CGI over fcgiwrap/nginx

如何让 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"
Run Code Online (Sandbox Code Playgroud)

这对于调试来说完全没用。我可以使用 CGI::Carp qw{fatalsToBrowser} 之类的东西,但这不是最佳选择。最好将其记录到服务器端文件中。

小智 0

您可以使用此解决方案将 STDOUT 和 STDERR 发送到您有权写入的任何日志文件,包括 nginx error.log。尽管将其发送到不同的文件可能会更有帮助。如果您只需要 STDERR 输出,只需删除 STDOUT 条目即可。