Xサーバーなどのレンタルサーバーで作成したWordPressサイトの常時SSL化(https化)やwww有り無しを統一して、ページやコンテンツの重複を避けるための.htaccessにコードを記述する方法やワードプレスの設定方法をご紹介しています。
記事内の目次
WordPress 常時SSL化とサブディレクトリからサブドメインへの301転送設定
※example.comの部分は運用しているウェブサイトのドメインに書き換えて下さい。
エックスサーバーでワードプレスサイトを作成して常時SSL化の設定をすると、httpやwwwのある無しで同じページの内容やコンテンツが重複する4つのURLが作成されてしまいます。
このままでは、正規のURL以外にも複数のコピーサイトがあるものだと認識されてしまう可能性もあるので、http://example.com・http://www.example.com・https://www.example.comの3つのURLからhttps://example.comに全てリダイレクトする設定を行います。
WordPress側の設定とサーバー側の.htaccessに手を加えなくてはいけなくなるため、万が一に備えてバックアップを取ってから設定をするようにして下さい。
ワードプレスアドレスとサイトアドレスの設定
.htaccessにコードを記述する前に、WordPressの設定でWordPressアドレスとサイトアドレスを、http://example.comからhttps://example.comに書き換えておきます。
これを先にやっておかないと、常時SSL化したURLに転送されてしまって、ログインもアクセスも出来なくなる恐れがあります。
メインのポートフォリオサイトのURLを、WordPressの一般設定でhttp://japan-videography.comからhttps://japan-videography.comに書き換えを行いました。
httpsのwww無しにリダイレクトする設定
WordPressアドレスとサイトアドレスを常時SSL化したURLに書き換えても、複数のURLが存在したままの状態になっているので、.htaccessにコードを記述してhttps://example.comに統一する設定を行います。
Xサーバーであれば、サーバーパネルの.htaccess編集画面を開いて、下記コードを一番上に追記いたします。
RewriteEngine On
RewriteBase /
#www無しにリダイレクト
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
#httpsにリダイレクト
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
この設定の一番目で、www付きURLでアクセスした時の全てのアクセスをhttps://example.com/に301リダイレクトする設定となり、2番目のコードでhttp://のURLを入力したアクセスをhttps://example.com/に301リダイレクトする設定となります。
このコードを.htaccessの一番上に追加する事で、全てのアクセスをwww無しの常時SSL化したhttps://のURLに統一をする事が出来ます。
ポートフォリオサイトに設定しているメインのドメインであれば、http://japan-videography.com・http://www.japan-videography.com・https://www.japan-videography.comのどれからアクセスしても、https://japan-videography.comに301リダイレクトされるようになりました。
また、下層ページについてもディレクトリごと常時SSL化してURLに転送される設定になるので、例えばhttp://japan-videography.com/shiroishi2024/のページにアクセスしても、https://japan-videography.com/shiroishi2024/に301で転送される設定となりますので、ご安心下さい。
この記事へのコメントはありません。