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 相关文章推荐
用mysql内存表来代替php session的类
Feb 01 PHP
网页游戏开发入门教程三(简单程序应用)
Nov 02 PHP
php设计模式 State (状态模式)
Jun 26 PHP
php curl选项列表(超详细)
Jul 01 PHP
smarty模板局部缓存方法使用示例
Jun 17 PHP
PHP实现从远程下载文件的方法
Mar 12 PHP
PHP函数shuffle()取数组若干个随机元素的方法分析
Apr 02 PHP
PHP经典算法集锦【经典收藏】
Sep 14 PHP
php is_executable判断给定文件名是否可执行实例
Sep 26 PHP
php获取字符串前几位的实例(substr返回字符串的子串用法)
Mar 08 PHP
THINKPHP3.2使用soap连接webservice的解决方法
Dec 13 PHP
php实现算术验证码功能
Dec 05 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 include_path设置技巧分享
2011/07/03 PHP
php生成txt文件实例代码介绍
2016/04/28 PHP
Laravel网站打开速度优化的方法汇总
2017/07/16 PHP
如何用javascript去掉字符串里的所有空格
2007/02/08 Javascript
js 函数的执行环境和作用域链的深入解析
2009/11/01 Javascript
javascript 哈希表(hashtable)的简单实现
2010/01/20 Javascript
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
防止页面被iframe(兼容IE,Firefox火狐)
2010/07/04 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
Jquery加载时从后台读取数据绑定到dropdownList实例
2013/06/09 Javascript
简单封装js的dom查询实例代码
2016/07/08 Javascript
借助node实战JSONP跨域实例
2017/03/30 Javascript
几种响应式文字详解
2017/05/19 Javascript
如何更好的编写js async函数
2018/05/13 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
记一次用vue做的活动页的方法步骤
2019/04/11 Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
2019/08/23 Javascript
python DataFrame转dict字典过程详解
2019/12/26 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
python 实现控制鼠标键盘
2020/11/27 Python
手把手教你配置JupyterLab 环境的实现
2021/02/02 Python
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
vue路由实现登录拦截
2021/03/24 Vue.js
退伍老兵事迹材料
2014/01/31 职场文书
大队干部竞选演讲稿
2014/04/28 职场文书
出国英文推荐信
2014/05/10 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
升职感谢信
2015/01/22 职场文书
2015年度党员自我评价范文
2015/03/03 职场文书
团日活动总结格式
2015/05/11 职场文书
一个独生女的故事观后感
2015/06/04 职场文书
你喜欢篮球吗?Python实现篮球游戏
2021/06/11 Python
新手入门Mysql--概念
2021/06/18 MySQL
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
2021/06/26 Java/Android