首页 >后端开发 >php教程 >FreeBSD php5.6 https fsockopen错误

FreeBSD php5.6 https fsockopen错误

WBOY
WBOY原创
2016-06-23 13:26:071363浏览

php升级到5.6后,fsockpen('ssl://www.baidu.com', 443, $errno, $errstr, 10);
爆出:

PHP Warning:  fsockopen(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate 

获取 php加载的 openssl.pem文件路径:

php -r "print_r(openssl_get_cert_locations());"

Array(    [default_cert_file] => /usr/local/openssl/cert.pem    [default_cert_file_env] => SSL_CERT_FILE    [default_cert_dir] => /usr/local/openssl/certs    [default_cert_dir_env] => SSL_CERT_DIR    [default_private_dir] => /usr/local/openssl/private    [default_default_cert_area] => /usr/local/openssl    [ini_cafile] =>     [ini_capath] => )

ls /usr/local/openssl/cert.pem


根本没有这个文件,

做个软连接:

ln -s /usr/local/share/certs/ca-root-nss.crt /usr/local/openssl/cert.pem

OK.

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn