博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php之curl实现http与https请求的方法
阅读量:2384 次
发布时间:2019-05-10

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

这篇文章主要介绍了php之curl实现http与https请求的方法,分别讲述了PHP访问http网页与访问https网页的实例,以及相关的注意事项,需要的朋友可以参考下。

本文实例讲述了php之curl实现http与https请求的方法,分享给大家供大家参考。具体如下: 通常来说,php的curl函数组可以帮助我们把机器伪装成人的行为来抓取网站,下面来分享两个例子,一个是访问http网页,一个访问https网页,一起来看一下。 每次要使用curl的时候,总要查一堆资料。 现在将常用的几句保存下来,省的每次都去谷歌。

###常规curl请求:

$url = 'http://www.jb51.net';$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_HEADER, 1);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);$data = curl_exec($curl);curl_close($curl);var_dump($data);

###使用curl请求HTTPS:

$url = 'https://www.jb51.net';$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_HEADER, 1);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 设置头信息(当用IP直接访问时,加这个如:https://baibu.com -> 220.15.23.5)// curl_setopt($ci, CURLOPT_HTTPHEADER, array('Host:baibu.com'));curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //这个是重点,规避ssl的证书检查。curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); // 跳过host验证$data = curl_exec($curl);curl_close($curl);var_dump($data);

###注意 当请求https的数据时,会要求证书,这时候,加上下面这两个参数,规避ssl的证书检查 复制代码 代码如下:

// https请求 不验证证书和hostscurl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // 从证书中检查SSL加密算法是否存在(默认不需要验证)curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

###curl https请求代码

'fdipzone');$header = array();$response = curl_https($url, $data, $header, 5);echo $response;?>

###baidu域名解析后https请求示例

// $url = "https://www.baidu.com";$url =  "https://123.125.114.144";$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Host:baidu.com')); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//这个是重点。 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);$data = curl_exec($curl); // 打印获取curl请求信息 // $curl_info = curl_getinfo( $curl ); // print_r($curl_info);// 打印错误信息// curl_error( $curl);curl_close($curl);var_dump($data);

转载于:https://my.oschina.net/corwien/blog/677119

你可能感兴趣的文章
php中$_Get $_POST $_REQUEST区别
查看>>
PHP - 解决中文乱码问题
查看>>
PHP学习-面向对象
查看>>
js页面跳转整理
查看>>
在64位Win7操作系统中安装Microsoft Access Engine的解决方案
查看>>
30类CSS选择器
查看>>
微信支付的使用介绍
查看>>
PHP单例模式应用详解
查看>>
冒号课堂§5.2:数据类型
查看>>
博客搬家
查看>>
冒号课堂§6.2:平台语言
查看>>
《关于信息系统组织方式的一个提案》的评论与反评
查看>>
冒号和他的学生们(连载10)——超级范式
查看>>
冒号和他的学生们(连载9)——泛型范式
查看>>
冒号和他的学生们(连载13)——范式总结
查看>>
A Proposal on Organization of Information System
查看>>
冒号和他的学生们(连载2)——首轮提问
查看>>
正则表达式与文件格式化处理
查看>>
Java EE互联网轻量级框架整合开发
查看>>
Java语言程序设计(基础篇)
查看>>