Amazon Lightsail & WordPressの無料SSLのLet’s Encryptの設定で詰まったときの記録

技術備忘録

無料でSSLを利用できるということでLet’s Encryptを利用したものの、bncert-toolでのインストールがうまく行かなかったことや、https化したらcssが読み込めなくなるといった問題に遭遇したため、その記録を残しておきます。

スポンサーリンク

前提

  • lightsail上で静的IPを取得済み
  • 取得したIPと紐づいたドメインを取得済み
スポンサーリンク

発生した問題と対処

  1. (今回は扱わない)Gitリポジトリからletsencryptをcloneしてインストールを試みる
    • ./letsencrypt-autoを実行するもエラー発生(Your system is not supported by certbot-auto anymore.)→無視して別の方法を探る
  2. bncert-toolで簡単にインストールできそうなのを見つけ、こちらを試みる
    • エラー発生(SSLCertificateFile: file ‘/opt/bitnami/apache2/conf does not exist or is empty)
    • /opt/bitnami/apps/wordpress/htdocs/wp-config.phpのcrt, keyファイルをデフォルト(server.crt, server.key)に戻して再度実行したところ通った
  3. https接続でCSSがダウンロードされない問題発生
    • wp-config.phpからリソースのURLを修正することで解決

以下では2からの対処について説明します。


スポンサーリンク

SSLCertificateFile: file ‘/opt/bitnami/apache2/conf does not exist or is emptyを解決

こちらの回答を参考にしました。

SSLCertificateFile: file ‘/opt/bitnami/apache2/conf/aknainmobiliaria.com.crt’ does not exist or is empty

/opt/bitnami/apache2/conf/bitnami/bitnami.confから一度自身のドメインに関するcrt, keyの部分を初期設定に戻してから再度bncert-toolを実行するというものです。

// エラーが発生している時
SSLCertificateFile "/opt/bitnami/apache2/conf/www.{domain}.com.crt"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/www.{domain}.com.key"

// 修正後
SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"
// 再度実行
sudo /opt/bitnami/bncert-tool


スポンサーリンク

https接続でCSSがダウンロードされない問題を解決

簡単に言うと、cssダウンロード時の参照先が「外観/テーマの編集」で表示される「リソース先のURL」となっていて、これがhttpだったためにcssがダウンロードされないというものでした。

そのため、リソース先のURLをhttpsに修正する必要があります。修正は以下のように行いました。

// 修正前
...
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] . '/');
...

// 修正後
...
define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] . '/');
...

参考ページ

コメント

タイトルとURLをコピーしました