HTTP请求被认为超时之后的默认时间是多少?

问题描述:

对于PHP,HTTP请求被认为超时的默认时间是多少?HTTP请求被认为超时之后的默认时间是多少?

我使用的PECL HTTP扩展,使HTTP请求。我可以在提出请求时设置超时限制,但是如果没有明确指定,我想知道默认值是什么。

我已经通过PHP手册无济于事猎杀。我会很感谢证据支持的答案,例如相关手册页的链接,而不是推测性的建议。

我很想知道默认的超时时间实际上是不只是它的可能是。我可以猜测它可能可能 30秒,因为这似乎是一个合理的值,不过,我可以找到什么来证实或否认这一点。

+0

交叉引用:[是否file_get_contents()函数具有一个超时设置?](https://*.com/questions/10236166/does-file-让 - 内容 - 有-A-超时设置) – hakre 2014-01-12 08:34:06

我敢肯定你要找的是什么default_socket_timeout的php.ini选项。它看起来默认是60秒。

只是以供将来参考:http://svn.php.net/viewvc/pecl/http/trunk/http_request_api.c?view=markup

如果我理解正确的话,默认的超时选项的值是:

  • 超时 = CURLOPT_TIMEOUT_MS | CURLOPT_TIMEOUT = 0(意味着 “无限期地等待”)
  • connecttimeout = CURLOPT_CONNECTTIMEOUT_MS | CURLOPT_CONNECTTIMEOUT = 3
  • dns_cache_timeout = CURLOPT_DNS_CACHE_TIMEOUT = 60