zoukankan      html  css  js  c++  java
  • file_get_contents函数获取不到数据的一种情况

    问题:

       file_get_contents($url) 获取不到数据,尽管URL地址正确,函数使用正确。如下代码

    $url = "https://www.baidu.com";
    $html = file_get_contents($url);
    echo $html;

    分析解决:

      百思不得解,百度了很多解决方法(很多都只是解决某特定问题),但解决不了目前的问题。

      之后换了好几个url测试,终于发现上面 $url 是HTTPS地址, file_get_contents() 是能正常获取到HTTP地址的内容,类似 http://www.baidu.com ,所以应该和PHP的SSL配置有关。

      然后从同事那拷贝了同版本的 php.ini ,用 SVN 自带的文本比较功能,和我本地 php.ini 比较,发现本地 php.ini 中 extension=php_openssl.dll 注释掉了,没开。果断开启。

      重启Apache后,  file_get_contents() 马上好使了。

    总结:

      发现  file_get_contents 获取不到 HTTPS地址 内容时,首先确定PHP是否开启SSL扩展。

  • 相关阅读:
    申请奖励加分
    6.14
    6.11
    6.10
    6.9
    6.8
    6.7
    6.6
    6.5
    6.4
  • 原文地址:https://www.cnblogs.com/lhat/p/5878807.html
Copyright © 2011-2022 走看看