curl超時時間設定

2021-09-07 15:39:09 字數 1267 閱讀 3305

訪問http方式很多,可以使用curl, socket, file_get_contents() 等方法。

在訪問http時,需要考慮超時的問題。

curl訪問http:

curl 是常用的訪問http協議介面的lib庫,效能高,還有一些併發支援的功能等。 

curl_setopt($ch, opt) 可以設定一些超時的設定,主要包括:   

① (重要) curlopt_timeout 設定curl允許執行的最長秒數。     

② (重要) curlopt_timeout_ms 設定curl允許執行的最長毫秒數。   

(在curl 7.16.2中被加入。從php 5.2.3起可使用)

③  curlopt_connecttimeout 在發起連線前等待的時間,如果設定為0,則無限等待。

④ curlopt_connecttimeout_ms 嘗試連線等待的時間,以毫秒為單位。如果設定為0,則無限等待。  (在curl 7.16.2中被加入。從php 5.2.3開始可用) 

⑤ curlopt_dns_cache_timeout 設定在記憶體中儲存dns資訊的時間,預設為120秒。

1. curl普通秒級超時:

複製** **如下:

$ch = curl_init();     

curl_setopt($ch, curlopt_url,$url);      

curl_setopt($ch, curlopt_returntransfer,1);      

curl_setopt($ch, curlopt_timeout,60);   //只需要設定乙個秒的數量就可以 

2. curl普通秒級超時使用:

複製** **如下:

curl_setopt($ch, curlopt_timeout,60);

3. curl如果需要進行毫秒超時,需要增加:

複製** **如下:

curl_easy_setopt(curl, curlopt_nosignal,1l);     

//或者     

curl_setopt ( $ch,  curlopt_nosignal,true);//支援毫秒級別超時設定

Linux下CURL設定請求超時時間

連線超時時間用 connect timeout引數來指定,資料傳輸的最大允許時間用 m引數來指定。例如 curl connect timeout 10 m 20 http x 連線超時的話,出錯提示形如 curl 28 connect timed out 資料傳輸的最大允許時間超時的話,出錯提示形如...

設定ssh超時時間

方法一 最近公司剛剛買了一台hyper v的vps,但是連線ssh伺服器剛剛離開一會就斷開,不得不需要反覆連線伺服器,為了使ssh伺服器可以保持足夠的連線時間,大家可以按以下方法設定 基於安全的理由,如果使用者連線到 ssh server 後閒置,ssh server 會在超過特定時間後自動終止 s...

ssh設定超時時間

ssh連線超時問題解決方案 1.修改server端的etc ssh sshd config clientaliveinterval 60 server每隔60秒傳送一次請求給client,然後client響應,從而保持連線 clientalivecountmax 3 server發出請求後,客戶端沒...