SSLに移行したのはいいのですが、いくつか問題発見。修正した記録です。
awstatsのログが出力されない
awstatsのログが出力されなくなっている。調べてみると、httpd-ssl.confによるログ設定で、httpd.confのログが上書きされている模様。sslのログを別にわけてもよいのだが、httpd-ssl.confのログ設定を変えたほうが面倒が少ないと判断し、httpd-ssl/confを修正。
sudo vi /etc/httpd/conf/extra/httpd-ssl.conf
httpd-ssl.confに、以下を追加。
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
これでログが復活した。
.htaccessを使わずにSSLへリダイレクトする
.htaccessが動いていない気がしたので確認したら、そもそも.htaccessの使用を認めていなかった。.htaccessを使わずに、httpd.confで行うことにする。
sudo vi /etc/httpd/conf/httpd.conf
下記を追加する。もっとも、.htaccessの記載を転用しただけだが。
<ifModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </ifModule>
apacheの再起動。
sudo systemctl restart httpd.service
Firefoxで証明書エラーがでる
apache 2.4.8以降は、cert.pemではなく、fullchain.pemを指定する必要があった。
fullchain.pem
SSL/TLS サーバ証明書(公開鍵を含む)と中間証明書の両方が含まれているファイルで、cert.pem と chain.pem の内容が結合されたものです。
これは、Apache 2.4.8 以上 や nginx で使用するファイルです。
Apache 2.4.8 以上の場合は SSLCertificateFile、nginx では ssl_certificate において、このファイルを指定します。
(Let’s Encrypt ユーザーガイド)
というわけで
sudo vi /etc/httpd/conf/extra/httpd-ssl.conf
下記のようにする。YourDomainのところは環境によって読み替え。
SSLCertificateFile "/etc/letsencrypt/live/YourDomain/fullchain.pem" SSLCertificateKeyFile "/etc/letsencrypt/live/YourDomain/privkey.pem"
fullchain.pemのところが、cert.pemになっていたため、証明書エラーがでていたようだ。結局、Firefoxの問題ではなく、ただの設定ミスだったというオチ。