金莎娱乐电子游戏网PHP抓取HTTPS内容和错误管理的主意_javascript才具_脚本之家

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

你可以从语义上看出,它是忽略/跳过了SSL安全表明。恐怕这不是多少个很好的做法,但对此普通的景色中,那多次经过丰裕了。

如上便是PHP抓取HTTPS内容和错误管理方法的全体内容了,希望本文的内容对我们学习也许接受PHP能有所帮衬,假使有疑问大家能够留言沟通。

当运转方面包车型地铁代码是赶上上面包车型地铁不当提醒:

上面是运用 Curl装进的一个能访问HTTPS内容的函数:

您能够用上边包车型地铁脚本来检查你的PHP情形的布置:

问题

别的贰个作者时时用的PHP里抓取内容的函数是 curl,它比
file_get_contents()越来越强盛,提供了重重的可选参数。对于访问 HTTPS
内容的难点,大家供给运用的 CURL安排参数是:

运行上面的这个脚本片段,在我的机器上得到的结果是:string "file"[2]=>string "glob"[3]=>string "data"[4]=>string "http"[5]=>string "ftp"[6]=>string "zip"[7]=>string "compress.zlib"[8]=>string "compress.bzip2"[9]=>string "phar"}

干什么会冒出这么的不当?

在英特网通过黄金时代番搜寻,开采遭遇这样错误的人还不少,难点很直白,是因为在PHP的构造文件里不曾开启二个参数,在本人本机上是
/apache/bin/php.ini
里的;extension=php_openssl.dll那后生可畏项,供给将前方的办事处去掉。

在商讨Hacker News API的时候遭受三个HTTPS难点。因为兼具的Hacker News
API都是经过加密的HTTPS合同访问的,跟普通的HTTP合同分裂,当使用PHP里的函数
file_get_contents()来获得API里提供的数码时,现身谬误

应用的代码是这么的:

PHP Warning: file_get_contents(): Unable to find the wrapper “https” – did you forget to enable it when you configured PHP?
function getHTTPS {$ch = curl_init();curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_HEADER, false);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_REFERER, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);$result = curl_exec;return $result;}

替代方案

总结

开采错误,修改错误,那很简短,困难的是,开掘错误后不能修改错误。小编本来是想将以此本子方法远程主机上,但自己一点办法也未有改正远程主机的PHP配置,结果是,小编无可奈何选拔这一方案,但大家不能在一棵树上吊死,那条路走不通,看看有未有其它路。

相关文章