2017-06-13 70 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本身超時一樣慢。謝謝你,因爲回覆清除了我的頭腦中的愚蠢,我現在修復了它。 –