curl 或服务器时间限制?

curl or server time limit?

我正在服务器上测试 IDL 代码,可以通过将适当的 URL 发送到 Python 脚本(类似这样的东西:http://example.com/pythoncode.py?arg1=val1&arg2=val2)来访问它,更改多次参数值并通过 Python 脚本读取 IDL 代码提供的结果。

我 运行 来自 Mac 终端的那些测试,使用:

time curl -s - m 900 "http:...." > output.res

这正是我想要的,除了出于某种原因,如果请求花费超过 10 分钟(它可以),服务器似乎会停止。例如:

real    10m0.126s
user    0m0.013s
sys     0m0.021s

而 output.res 是:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>504 Gateway Time-out</title> </head><body> <h1>Gateway Time-out</h1>
<p>The gateway did not receive a timely response from the upstream server or application.</p> </body></html>

我最初认为这是 --max-time 的问题,但我现在设置了 -m 900,结果相同。

问题:我是在使用 curl 做错了什么,还是在服务器端查看?

curl 的 -m 选项设置了它花费的最长时间。如果它比这更早停止,那是因为其他原因。退出代码也会显示它是否由于自身超时而退出。

在这种情况下,您甚至会得到一条友好的消息输出,表明问题确实出在另一端:“The gateway did not receive a timely response from the upstream server