php curl获取网页内容(IPV6下超时)的解决办法


Posted in PHP onJuly 16, 2013

原因:
在程序中我对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及以上版本时,以上设置才生效。
PHP 相关文章推荐
PHP写入WRITE编码为UTF8的文件的实现代码
Jul 07 PHP
php页面消耗内存过大的处理办法
Mar 18 PHP
php格式化日期实例分析
Nov 12 PHP
php查询相似度最高的字符串的方法
Mar 12 PHP
PHP7.0版本备注
Jul 23 PHP
Apache启动报错No space left on device: AH00023该怎么解决
Oct 16 PHP
SSO单点登录的PHP实现方法(Laravel框架)
Mar 23 PHP
PHP开发的微信现金红包功能示例
Jun 29 PHP
PHP中TP5 上传文件的实例详解
Jul 31 PHP
php之header的不同用法总结(实例讲解)
Nov 28 PHP
PHP+Ajax实现的检测用户名功能简单示例
Feb 12 PHP
实例讲解PHP表单处理
Feb 15 PHP
ie与session丢失(新窗口cookie丢失)实测及解决方案
Jul 15 #PHP
实测在class的function中include的文件中非php的global全局环境
Jul 15 #PHP
Php output buffering缓存及程序缓存深入解析
Jul 15 #PHP
PHP 转义使用详解
Jul 15 #PHP
thinkphp 一个页面使用2次分页的实现方法
Jul 15 #PHP
shell脚本作为保证PHP脚本不挂掉的守护进程实例分享
Jul 15 #PHP
PHP 伪静态技术原理以及突破原理实现介绍
Jul 12 #PHP
You might like
php读取csv实现csv文件下载功能
2013/12/18 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
PHP使用递归方式列出当前目录下所有文件的方法
2015/06/02 PHP
使用PHP免费发送定时短信的实例
2016/10/24 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
window.open的功能全解析
2006/10/10 Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
2008/11/24 Javascript
SlideView 图片滑动(扩展/收缩)展示效果
2010/08/01 Javascript
JavaScript类和继承 prototype属性
2010/09/03 Javascript
javascript实现文本域写入字符时限定字数
2014/02/12 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
js实现文字列表无缝滚动效果
2017/06/23 Javascript
详解如何使用webpack+es6开发angular1.x
2017/08/16 Javascript
Nodejs调用WebService的示例代码
2017/09/29 NodeJs
jQuery使用bind函数实现绑定多个事件的方法
2017/10/11 jQuery
Angular6封装http请求的步骤详解
2018/08/13 Javascript
Vue模板语法中数据绑定的实例代码
2019/05/17 Javascript
webpack中如何加载静态文件的方法步骤
2019/05/18 Javascript
vxe-table vue table 表格组件功能
2019/05/26 Javascript
微信小程序实现消息框弹出动画
2020/04/18 Javascript
Django之Mode的外键自关联和引用未定义的Model方法
2018/12/15 Python
在Python文件中指定Python解释器的方法
2019/02/18 Python
详解python项目实战:模拟登陆CSDN
2019/04/04 Python
pytorch实现特殊的Module--Sqeuential三种写法
2020/01/15 Python
python3实现raspberry pi(树莓派)4驱小车控制程序
2020/02/12 Python
在Python中通过threshold创建mask方式
2020/02/19 Python
Python Celery异步任务队列使用方法解析
2020/08/10 Python
购买澳大利亚最好的服装和内衣在线:BONDS
2016/10/14 全球购物
租房协议书
2014/09/12 职场文书
导游欢送词
2015/01/31 职场文书
实习推荐信格式模板
2015/03/27 职场文书
2015年信息宣传工作总结
2015/05/26 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
2019年大学推荐信
2019/06/24 职场文书