加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 运营中心 > 建站资源 > 经验 > 正文

PHP file_get_contents函数获取https内容出错的解决方法

发布时间:2021-02-27 09:12:19 所属栏目:经验 来源:李洋个人博客
导读:最近陆陆续续接到网友反馈,导航主题在部分情况下会出现错误,起初我也是懵的,因为我的站点并没有发现这个错误,解决起来比较麻烦,排查了很久一直都未出现问题,但是部分客户真的遇到了,而且错误代码也已经给出,的的确确是导航问题,因为本站使用的是php

最近陆陆续续接到网友反馈,导航主题在部分情况下会出现错误,起初我也是懵的,因为我的站点并没有发现这个错误,解决起来比较麻烦,排查了很久一直都未出现问题,但是部分客户真的遇到了,而且错误代码也已经给出,的的确确是导航问题,因为本站使用的是php7.1,没有问题,但是也不能让所有人都去升级,毕竟有些虚拟机升级可能不是很方法,所以还得从跟上排查,zblogphp所给出的错误代码如下:

“E_WARNING : file_get_contents(//top.baidu.com/buzz?b=1&fr=topcategory_c513): failed to open stream: No such file or directory (set_error_handler) ”用file_get_contents这个php函数抓取数据,可能会在部分主机出现莫名其妙的错误,错误代码如图:

PHP file_get_contents函数获取https内容出错的解决方法

自行百度,查看“file_get_contents”这个函数,于是乎大概知道什么原因了,就是“file_get_contents”在获取https的连接时会出现如上的错误提示,百度的解决办法一般都是修改php.ini配置文件,找到“extension=php_openssl.dll”这一行,去掉前面的“;”或者找到“allow_url_include = Off ”这一行,将Off改为On,然后重启服务器。不过我测试了完全不管用,修改了“extension=php_openssl.dll”文件之后无法重启php,这就尴尬了。

其实不用那么麻烦,直接修改php函数就行,比如我们把链接的前面加上http试试看。

PHP file_get_contents函数获取https内容出错的解决方法

解决方法:

找到include.php文件,将“//top.baidu.com/buzz?b=1&fr=topcategory_c513”修改成“http://top.baidu.com/buzz?b=1&fr=topcategory_c513”,如图:

PHP file_get_contents函数获取https内容出错的解决方法

然后刷新页面查看效果是否可以用,导航主题模板已经更新,不需要在修改,部分客户自己修改过源码的请参考教程自行修改,修改完成后,后台首页“清空缓存并编译模板”,然后有问题在反馈给我反馈!

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读