php curl获取网页内容(IPV6下超时)的解决办法
2013-07-16 09:18
423 查看
原因:
在程序中我对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 REMOTE_ADDR之获取访客IP的代码
- php 获取客户端的真实ip
- php gethostbyname获取域名ip地址函数详解
- php 获取本机外网/公网IP的代码
- PHP 获取客户端真实IP地址多种方法小结
- php中获取远程客户端的真实ip地址的方法
- php获取用户IPv4或IPv6地址的代码
- php 获取本地IP代码
- PHP根据IP地址获取所在城市具体实现
- php利用新浪接口查询ip获取地理位置示例
- php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
- php中获取主机名、协议及IP地址的方法
- php实现根据IP地址获取其所在省市的方法
- PHP 获取ip地址代码汇总
相关文章推荐
- php curl获取网页内容(IPV6下超时)的解决办法
- c#远程获取网页内容及乱码问题的解决办法 .
- c#远程获取网页内容及乱码问题的解决办法 .
- android webview获取网页内容,高版本api解决办法
- 获取网页内容高度和宽度(不包括滚动条)兼容性JS解决办法
- c#远程获取网页内容及乱码问题的解决办法
- file_get_contents获取不到网页内容的解决方法
- 微信网页outh2获取code返回Oops! Something went wrong的解决办法
- UEditor不能获取文章内容的解决办法
- 从富文本编辑器获取html内容组装json,特殊字符引起报错解决办法。
- 解决办法之“超时时间已到。超时时间已到,但是尚未从池中获取连接..."
- 手机端网页使用html5地理定位获取位置失败的解决办法
- C#获取网页内容,解决大部分乱码问题
- 部分浏览器会将网页某些内容默认设置为关键字的解决办法
- Clipboard.GetImage() Clipboard获取粘贴板内容为null的解决办法
- 使用CInternetSession 获取网页内容。。。解决了ReadString时的乱码
- Hibernate的方法获取对象后,对象调用set后会自动更新数据库内容的解决办法
- 路径浏览器举例说明android编程中获取不到指定文件夹中的内容的原因及解决办法
- PHP内容连注释一起展示到网页上的解决办法
- HttpURLConnection获取网页内容,解决乱码的通用方法