httpからhttpsにリダイレクトする方法
不完全なSSL対応が原因で問題が起きることはよくありますが、「httpとhttpsの両方でアクセスできてしまう」もその1つです。
元々「http」で始まるURL(例:http://example.com/)をSSL対応して「https」で始まるように設定(例:https://example.com/)したら、どちらのURLでもアクセスできるようになってしまったというものです。
「httpsでアクセスできるから問題ない」と思うかもしれませんが、検索エンジンに「異なるURLで同じ内容のサイトが2つ存在する」と認識されてしまうのでSEO的にも良くない状態です。
「WordPressの不具合?」などと思うかもしれませんが、単純にSSL対応が不完全なだけでWordPressの不具合ではありません。
ですから、きちんとSSL対応すれば問題は解決します。難しい作業ではないので、このような状態であれば対応した方がよいでしょう。
以下、httpからhttpsへのリダイレクトについてプラグインを使う方法と.htaccessを編集する方法を紹介します。基本的にはどちらでも大丈夫です。
プラグインによるリダイレクト
プラグインで対応する場合、Really Simple SSLプラグインが役立ちます。難しい設定は不要で、インストール後「はい、SSL を有効化します。」をクリックするだけです。
これで「http://」へのアクセスは「https://」にリダイレクトされるようになります。
.htaccessによるリダイレクト
プラグインを使わない場合、.htaccessに次のコードを入力します。
RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
「アクセスされたURLがhttpsじゃない場合はhttpsにリダイレクトする」という意味です。プラグインをインストールしたくない場合などにお使いください。