一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php curl獲取網頁內容(IPV6下超時)的解決辦法

php curl獲取網頁內容(IPV6下超時)的解決辦法

2020-05-11 12:08PHP教程網 PHP教程

如果開啟了IPv6,curl默認會優先解析 IPv6,在對應域名沒有 IPv6 的情況下,會等待 IPv6 dns解析失敗 timeout 之后才按以前的正常流程去找 IPv4

原因:
在程序中我對curl獲取內容都作了較為嚴格的超時限制,所以就會造成無法獲取內容的問題。

解決方法:設置默認訪問為ipv4。
php的curl設置方法如下:

復制代碼 代碼如下:

<?php
/**
* IPV6下curl超時問題
*/
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
//設置curl默認訪問為IPv4
if(defined('CURLOPT_IPRESOLVE') && defined('CURL_IPRESOLVE_V4')){
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
}
//設置curl請求連接時的最長秒數,如果設置為0,則無限
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
//設置curl總執行動作的最長秒數,如果設置為0,則無限
curl_setopt ($ch, CURLOPT_TIMEOUT,$timeout*3);
$file_contents = curl_exec($ch);
curl_close($ch);


注:curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4) 只有在php版本5.3及以上版本,curl版本7.10.8及以上版本時,以上設置才生效。

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 特黄特色大片免费影院 | 好大好深好舒服 | 国产成人性毛片aaww | 亚洲欧美日韩国产一区图片 | 精品一区二区三区自拍图片区 | 国产成人综合手机在线播放 | 国产成人福利色视频 | 性bbbb妇女激情 | 97se狠狠狠狠狼亚洲综合网 | 国产一区二区精品久久91 | 黑人biglackon10十| 九9热这里只有真品 | 万域之王在线观看 | 国产成年人在线观看 | 免费人成在线观看 | 99热最新 | sp啪啪调教打屁股网站 | 欧美在线视频一区 | a天堂在线视频 | 超高清欧美同性videos | 亚洲黄色成人 | 黑帮大佬与我的365天2标清中文 | 强插美女 | 亚洲国产精品久久卡一 | 亚洲精品一二三四区 | 草草在线免费视频 | 三级黄色图片 | 色综合视频一区二区观看 | 欧美国产精品 | 国产精品毛片高清在线完整版 | 91精品天美精东蜜桃传媒免费 | freee×xx性欧美| 含羞草传媒一天免费看下 | hd在线观看免费高清视频 | 精品久久免费观看 | 肉色欧美久久久久久久蜜桃 | 国产精品亚洲片在线观看麻豆 | 大妹子最新视频在线观看 | 国产成人高清视频 | 欧美 变态 另类 人妖班 | 舔比小说 |