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 相关文章推荐
一个阿拉伯数字转中文数字的函数
Oct 09 PHP
php的header和asp中的redirect比较
Oct 09 PHP
PHP 身份证号验证函数
May 07 PHP
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
Jun 17 PHP
分享PHP header函数使用教程
Sep 05 PHP
使用swoole扩展php websocket示例
Feb 13 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
Jun 21 PHP
浅谈php提交form表单
Jul 01 PHP
php实现可逆加密的方法
Aug 11 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
Sep 23 PHP
PHP 实现页面静态化的几种方法
Jul 23 PHP
PHP面向对象五大原则之接口隔离原则(ISP)详解
Apr 04 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截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
php数据库备份还原类分享
2014/03/20 PHP
php中文繁体和简体相互转换的方法
2015/03/21 PHP
Yii2框架实现注册和登录教程
2016/09/30 PHP
Javascript简单实现可拖动的div
2013/10/22 Javascript
jquery text()方法取标签中的文本
2014/07/25 Javascript
jQuery 选择器详解
2015/01/19 Javascript
JavaScript 事件入门知识
2015/04/13 Javascript
JavaScript实现点击文字切换登录窗口的方法
2015/05/11 Javascript
javascript实现圣旨卷轴展开效果(代码分享)
2017/03/23 Javascript
jQuery+CSS实现的table表格行列转置功能示例
2018/01/08 jQuery
Vue封装Swiper实现图片轮播效果
2018/02/06 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
vue 项目打包时样式及背景图片路径找不到的解决方式
2019/11/12 Javascript
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
npm qs模块使用详解
2020/02/07 Javascript
Python中使用Tkinter模块创建GUI程序实例
2015/01/14 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
python对列进行平移变换的方法(shift)
2019/01/10 Python
python3.6 tkinter实现屏保小程序
2019/07/30 Python
TensorFlow梯度求解tf.gradients实例
2020/02/04 Python
pandas按照列的值排序(某一列或者多列)
2020/12/13 Python
一文读懂python Scrapy爬虫框架
2021/02/24 Python
表达自我的市场:Society6
2018/08/01 全球购物
Windows和Linux动态库应用异同
2016/07/28 面试题
YII2 全局异常处理深入讲解
2021/03/24 PHP
应用电子技术专业个人求职信
2013/09/21 职场文书
连锁经营管理专业大学生求职信
2013/10/30 职场文书
幼儿园国庆节活动方案
2014/02/01 职场文书
初三学生语文考试作弊检讨书
2014/12/14 职场文书
2015年质量月活动总结报告
2015/03/27 职场文书
【超详细】八大排序算法的各项比较以及各自特点
2021/03/31 Python
python基础学习之生成器与文件系统知识总结
2021/05/25 Python
AudioContext 实现音频可视化(web技术分享)
2022/02/24 Javascript
TypeScript 内置高级类型编程示例
2022/09/23 Javascript