web制作法

WPサイト(wpXサーバー)をhtaccessでhttpsにリダイレクトしたけど、トップページ以外がリダイレクトされないときの対処法

投稿日:

こんにちは、最近サイトをSSL化対応したらPVが減少している、バケル(@bakerukun007)です。

今回は、ブログをSSL化するときにちょっとつまづいたことがありましたので記載したいと思います。

ちなみに、この僕のサイトはCMSはWordPressで、サーバは、wpXレンタルサーバー エックスサーバー を使っていますが、どちらも同じ方法で解決できました。

問題の現象

SSL化のためにhttpからhttpsにリダイレクト処理を入れたけど、トップページ以外(下階層ページ)がリダイレクトされない

まず、僕が陥った現象を説明しますと、SSL化のためにhttpからhttpsにリダイレクト処理しようと思い、htaccessに以下の記述を行いました。

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

httpでアクセスされたら、強制的にhttpsに接続しなおしてね、っていう命令です。

これをhtaccessの一番下に記載したところ、トップページはリダイレクトされますが、下階層ページがリダイレクトされないという状況に陥りました。

解決策

httpsへのリダイレクト処理の記載は、一番上に書く

少し調べたところ、どうやら上記の記述をhtaccessの一番下に書いたのが良くなかったみたいです。

なので、こんな感じ(↓)にWordPressをインストールしたときに書き出された記述よりも前に、httpsへのリダイレクト処理を記載したところ、問題なく下階層もリダイレクトされるようになりました。

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

以上です。

僕と同じことで困っている人がいたら参考にしていただけたら幸いです。

スポンサー

スポンサー

関連広告

  • この記事を書いた人
  • 最新記事

ぴかいち

愛媛県松山市で楽しい人生を送るための努力を惜しまない2児の父です。 子育てしながら遊んでいます。 【興味】カメラ、イラスト、自転車通勤、マーケティング、ガジェット、子育て

-web制作法

Copyright© 愛媛のぴかいちブログ , 2024 All Rights Reserved Powered by AFFINGER5.