博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于DNS解析不受超时设置问题
阅读量:5140 次
发布时间:2019-06-13

本文共 788 字,大约阅读时间需要 2 分钟。

在很多时候,我们尽管做了超时设置,但任然是无济于事的,后面上网查了很多文章,大致有了解决方案,但是造成这个问题的原因还是不太清楚的迷,下面就简单说一下我遇到的DNS解析超时问题:

刚开始只设置了请求超时`CURLOPT_TIMEOUT`选项,时间为3秒,如下:
curl_setopt($curl, CURLOPT_TIMEOUT, 3); // 设置超时限制防止死循环
发现curl执行时间是12秒多,又追加了连接超时`CURLOPT_CONNECTTIMEOUT`为2秒,如下:
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 2); // 设置连接超时限制防止死循环
然鹅,并没有卵用,curl执行时间仍然是12秒,且报同样的curl_error [Resolving timed out after 3511 milliseconds]

 

因为本人比较执着,终于找到了有用的文章,试着根据里边讲到的去指定DNS解析规范为IPV4,问题完美解决掉了,最终设置如下:

curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );// 解决DNS解析不受超时设置控制curl_setopt($curl, CURLOPT_TIMEOUT, 3); // 设置超时限制防止死循环curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 2); // 设置连接超时限制防止死循环

 

很感激这位博主的聪明才智,我仅是一位搬运工,为了更多遇到相同问题的人能准确地定位问题,并解决掉问题。

参考文章:

 

PS:如果有大神知道造成这个问题的原因,并给予回复的话,感恩?

 

转载于:https://www.cnblogs.com/wupeiky/p/11514592.html

你可能感兴趣的文章
《DSP using MATLAB》Problem 7.37
查看>>
python基础学习第二天
查看>>
java可重入锁reentrantlock
查看>>
浅谈卷积神经网络及matlab实现
查看>>
解决ajax请求cors跨域问题
查看>>
《收获,不止Oracle》pdf
查看>>
LinkedList<E>源码分析
查看>>
Real-Time Rendering 笔记
查看>>
如何理解HTML结构的语义化
查看>>
Activity之间的跳转:
查看>>
实验四2
查看>>
Android现学现用第十一天
查看>>
多路复用
查看>>
Python数据可视化之Pygal(雷达图)
查看>>
Java学习笔记--字符串和文件IO
查看>>
转 Silverlight开发历程—(画刷与着色之线性渐变画刷)
查看>>
SQL语法(3)
查看>>
在js在添版本号
查看>>
sublime3
查看>>
Exception Type: IntegrityError 数据完整性错误
查看>>