====== 33 PHP56 fsockopenでエラー ======
PHP 5.6にアップグレードした後、fsockopen()でエラー
PHP Warning: fsockopen(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in /home/matsui/apps/front/lib/XML/RPC.php on line 951
はじめエラーがまった表示されず、困ったけど@が付いてた。。。
外すとちゃんとエラー表示してくれました。
950 $fp = @fsockopen($protocol . $server, $port,
951 $this->errno, $this->errstr);
===== 対応方法 =====
default_cert_fileを調べて、CA証明書を用意しておく。
# ln -s /etc/pki/tls/certs/ca-bundle.crt /opt/openssl-1.0.2r/ssl/cert.pem
==== default_cert_fileの確認 ====
# /opt/php-5.6.13/bin/php -r "print_r(openssl_get_cert_locations());"
Array
(
[default_cert_file] => /opt/openssl-1.0.2r/ssl/cert.pem
[default_cert_file_env] => SSL_CERT_FILE
[default_cert_dir] => /opt/openssl-1.0.2r/ssl/certs
[default_cert_dir_env] => SSL_CERT_DIR
[default_private_dir] => /opt/openssl-1.0.2r/ssl/private
[default_default_cert_area] => /opt/openssl-1.0.2r/ssl
[ini_cafile] =>
[ini_capath] =>
)
{{tag>php}}