fcgiwrap
我通过与 连接来提供可执行脚本(主要是 C 语言)nginx
。由于脚本是经过编译的,因此我可以在编译过程中收到编码错误,但有时我会收到CGI
错误,只是指出
An error occurred while reading CGI reply (no response received)
是否有任何调试方法可以识别 CGI 请求/进程出了什么问题?
如何设置调试系统以将错误传递到 nginx 日志中?
答案1
我sleep(10);
在我的 C 程序中放了一个。用你的程序启动 GDB,并在 sleep 后面的命令上设置一个断点。然后在浏览器中提交你的 cgi 程序并输入ps axu | grep prog
。输入attach <pid>
gdb,你需要快速完成此操作,你只有 10 秒钟。然后你就可以调试你的程序了。