www.googleapis.comからページを取得するためにGuzzleHttp(Macではphp + apache)を取得しようとしたときに、ここに行き着きました。
それが誰かを助ける場合に備えて、これが私の最終的な解決策でした。
このエラーが発生しているドメインの証明書チェーンを確認してください。私にとってはgoogleapis.comでした
openssl s_client -host www.googleapis.com -port 443
次のようなものが返されます。
Certificate chain
0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.googleapis.com
i:/C=US/O=Google Inc/CN=Google Internet Authority G2
1 s:/C=US/O=Google Inc/CN=Google Internet Authority G2
i:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
2 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
注:問題を修正した後でこれをキャプチャしました。チェーンの出力が異なる場合があります。
次に、phpで許可されている証明書を確認する必要があります。ページでphpinfo()を実行します。
<?php echo phpinfo();
次に、ページ出力からロードされた証明書ファイルを探します。
openssl.cafile /usr/local/php5/ssl/certs/cacert.pem
これは、正しい証明書を追加して修正する必要のあるファイルです。
sudo nano /usr/local/php5/ssl/certs/cacert.pem
基本的に、このファイルの最後に正しい証明書「署名」を追加する必要があります。
あなたはここでそれらのいくつかを見つけることができます:あなたがそれらを必要とするならば、あなたはチェーンの他のものをグーグル/検索する必要があるかもしれません。
彼らはこのように見えます:

(注:これは画像であるため、stackoverflowから証明書をコピーして貼り付けるだけでは不十分です)
適切な証明書がこのファイルに含まれたら、apacheを再起動してテストします。