FreeBSD php5.6 https fsockopen错误

二次信任 提交于 2020-03-22 00:08:01

3 月,跳不动了?>>>

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.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!