--> -->
RapidSSLの証明書を入れた場合、ブラウザによっては正しく認識されず不正な証明書と判断されてしまう場合がある。
サーバー側に中間証明書の設定が必要なのだが、そのメモ(._.)φ。
サーバー証明書のファイルに全部くっつける。
-----BEGIN CERTIFICATE----- : [購入したサーバー証明書] : -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- : [中間証明書] : -----END CERTIFICATE-----
# 以下の方法は2.4.8以前の場合。2.4.8以降ではnginxと同様サーバー証明書にくっつけます。
confの設定に中間証明書の指定を行う。
SSLCertificateChainFile /etc/httpd/...中間証明書ファイル名
サーバー再起動して動作確認して完了。
# systemctl restart httpd
ちなみに中間証明書はRapidSSLのCA(認証局)であるGeoTrustのHPから落とせる。
https://www.geotrust.co.jp/resources/rapidssl/repository/intermediate_sha2.html
さらにちなみに、この動作確認ができる(つまりブラウザにCAが登録されていない)ブラウザは、私の近辺の環境ではAndroid4.3のchromeだけ。
貴重な環境(笑)。他のPCのブラウザや新しいスマホのブラウザでは中間証明書が無くても問題なく認識してくれる。
証明書発行時のメールに「中間証明書が必要です」と書かれていたら、仮に手元の環境で中間証明書を入れなくて正常に動作確認できても世の中にはそうでない環境もある可能性があるので、素直に設定しよう。
と思ったらこんな便利なサイトがあった。
■Check your SSL/TLS certificate installation
https://cryptoreport.geotrust.com/checker/views/certCheck.jsp
問題があるとこんな風に表示してくれます。
ブラウザでは一見正常に表示できても、OGPでは正しく認識してくれない場合がある。
正しくOGPが取得できるかは、TwitterのCard ValidatorやFacebookのOGオブジェクトデバッガーなどで確認可能。
これらのサイトでは、curlでページを取得している模様。
中間証明書が正しく設定されていないとエラーになるので、上記geotrustのサイトで確実にエラーを消しておこう。