file_get_contents 获取HTTPS链接内容出错
今天遇到php用 file_get_contents
函数获取 https 链接的数据的时候,遇到如下错误。
1 | operation failed with code 1. OpenSSL Error messages:error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed |
我服务器环境是 Centos 7.
检查已经安装了 openssl包,并在php.ini中开启了 php_openssl 模块。测试发现问题依旧,最后在stackoverflow上找到了答案。
在php.ini中增加一行
openssl.cafile=/etc/pki/tls/certs/ca-bundle.crt
至于如果不确定php的配置文件位置,最好用phpinfo函数打印出来看看。如果机子只有单个环境 直接执行 php -i | grep config
找。