PHP使用Goutte不校验SSL证书

2021-03-12 10:28

阅读:671

标签:get   als   遇到   host   was   函数   网络请求   tpc   remote   

0. 引言

? 在使用PHPGoutte模块进行网络爬虫时,有时会遇到莫名奇妙的错误信息:

? SSL peer certificate or SSH remote key was not OK

? 此时,原因为:对方站点的SSL证书无法正确验证。

? 在查了一些网站后,知道可以对phpcurl请求添加两个配置项。

? 可是。。。。。

? 对于使用Goutte来说,网络请求也不过是:

$client = new Client();
$client->request(‘GET‘, $url);

? 此时完全不知道去哪改。。。。

1.方法

? 这里我们选择更改Goutte模块的源码

? 找到以下文件

/vendor/symfony/http-client/CurlHttpClient.php

? 在该文件下,包含了我们使用的request()函数

? 在该函数下,我们可以添加如下两行修改curl的配置:

? 位置无所谓,只要在该函数下就行,我添加在大概310行处。

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

? 然后就,大功告成!有问题可以在下面评论。

PHP使用Goutte不校验SSL证书

标签:get   als   遇到   host   was   函数   网络请求   tpc   remote   

原文地址:https://www.cnblogs.com/Lu-Yuyang/p/12827576.html


评论


亲,登录后才可以留言!