【AWS】Wordpressをhttps化!リダイレクトがトップページにしか効かない…。
サーバはAWS(アマゾン)を使っていて、前方にあるロードバランサーでhttpsを終端して、webサーバはhttpのレスポンスを処理するという、定番の構成です。
このとき、webサーバの「.htaccess」に、こんな感じでリダイレクト設定を書きますよね?
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R,L]
</IfModule>このリダイレクトがトップページでしか有効にならずにちょっと悩んでしまいました…。
原因は、上記の設定を書く位置が悪かったです。
リダイレクト設定は、他の設定よりも一番上側に書いたほうがいいですね。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>これでトップページ以外にも、ちゃんとリダイレクトが反映されます。
以上です!