2017-06-13 65 views
0

在尝试通过cURL连接之前,有没有办法检查以确保服务器存在?cURL和超时

试图找到一个好的处理程序,以防止我的服务器窗体尝试cURL连接到已脱机的服务器?最好的我发现\想到的是试图事先ping它,但这种方法仍然需要我等待ping超时,这也可以创建一组其他问题。

+0

你可以设置自己的超时时间为卷曲: https://unix.stackexchange.com/questions/94604/does-curl-have-a-timeout/94612 – Liquidchrome

回答

1

只是使用CURLOPT_CONNECTTIMEOUT - 如果你真的想确定服务器之前响应,不过,我想你可以使用socket_create/socket_setopt & SO_RCVTIMEO/socket_connect,看它是否调用卷曲前的规定时间内回答。但是如果你只能处理一个CURLOPT_CONNECTTIMOUT错误,你为什么要这么做呢?

+0

由于某种原因,它没有点击任何我用于测试超时与等待cURL本身超时一样慢。谢谢你,因为回复清除了我的头脑中的愚蠢,我现在修复了它。 –