我一直在运行一个使用PECL HTTP发送HTTP请求的服务器,如下所示:
$http_req = new HttpRequest("http://www.mysite.com/index.php?option=blah");
直到最近,我一直没有遇到问题。奇怪的是,它发送的大多数但仍然错过了一堆。我最近更换了服务器,以便全新安装所有内容。尽管已经特别注意保持所有内容与以前的服务器版本相同。
如果我用这段代码挖掘错误(抓住内部异常......归功于Mark):
$http_req = new HttpRequest("http://www.mysite.com/index.php?option=blah");
try {
$http_req->send();
} catch (HttpException $ex) {
if (isset($ex->innerException)){
echo $ex->innerException->getMessage();
exit;
} else {
echo $ex;
exit;
}
}
我收到此错误:
达到了超时;在3536毫秒后解决超时 (http://www.mysite.com/index.php?option=blah)
关于可能发生的事情或我可以尝试的任何想法?我确实尝试了一些选择。即。
$http_req = new HttpRequest("http://www.mysite.com/index.php?option=blah");
$http_req->setOptions(array(timeout=>100));
但无论我尝试超时,都无法改变。