wwwあり・なしをリダイレクト設定で統一する方法

wwwあり・なしリダイレクト設定で統一する方法 コーディング

wwwありでも、なしても同サイトにアクセスされるというケースが多いと思うのですが、アクセスできるアドレスが2つあるといろいろな問題が考えられます。
よく言われるのが、検索エンジンから2つ同じサイトがあると判断されSEOに影響を及ぼす可能性があるということです。
本当にそういった、影響があるなら対策は打っておきたいところですよね?
そこで今回は、.htaccessの301リダイレクト設定で wwwあり、または なしにアクセスできるアドレスを統一する方法をご紹介します。
ユーザーとしてもアクセスできるアドレスが一つのほうがわかりやすいし、ユーザービリティの観点からも設定しておくべきだと思うので是非ご確認ください。
また、常時SSLを設定している場合のwwwあり・なしリダイレクトの設定方法も併せてご紹介します。

.htaccessについて

今回ご紹介する、wwwあり・なしを統一する方法は、.htaccessに設定を記述しサーバーに配置する方法です。
.htaccessについては、以前詳しく書いた記事があるのでこちらをご確認ください。
第一階層に.htaccessファイルを配置しておくとその階層だけでなく、下層のディレクトリにもその設定内容が反映されます。

wwwありに統一する方法、wwwなしに統一する方法

wwwありに設定するか、wwwなしに設定するか、どっちがいいという意見はいろいろあるようですが。別にどっちにしても悪いことはないので「好みの方を選択する」でいいと思います。
それでは、wwwありの設定方法とwwwなしの設定方法をご紹介します。

wwwありで統一する場合の設定

wwwなしで統一する場合の設定

RewriteEngine Onはリダイレクト設定を有効にするための記述で、最初に記述することで機能します。2~3行目がwwwを統一するための記述で、wwwなしに統一する場合はwww付きでアクセスさらたらwwwなしにリダイレクト、wwwありで統一する場合は、wwwなしでアクセスがあった場合wwwを付与してリダイレクトさせる設定がしてあります。

上記のサンプルはいずれも特定のアドレスなどを含まない方法で設定したものなのでそのままコピペで使いまわしができて便利です。

もし、アドレスを直接記述して設定したい場合は次のように設定します。

アドレスを直接記述して設定する場合

使用するドメインが仮に「example.com」だった場合は次のように設定します。

wwwありで統一する場合の設定

wwwなしで統一する場合の設定

2種類の設定方法を紹介しましたが、効果はどちらも同じですので、お好みの方を使用してください。コピペで使用できる方法は便利ですが、サブドメインで使用した場合など、うまく機能しないこともあるようなので、そういった場合は直接アドレスを記述する方法を使たほうがいいです。

http→httpsのリダイレクトとwww有無統一リダイレクトを同時に設定する方法

常時SSLを設定している場合は、wwwあり・なしの統一と同時にhttpにアクセスがあった場合httpsにリダイレクトされる設定も設定しておかなければなりません。
httpからhttpsにリダイレクトする方法は以前「httpへのアクセスをhttpsにリダイレクト(転送)させる方法WordPressの対応方法も」という記事で紹介しましたので詳細はそちらで確認していただければと思うのですが。今回はwwwあり・なし統一のリダイレクトとhttp→httpsのリダイレクトを同時に設定する場合の記述方法をご紹介いたします。

wwwありで統一するかつhttpsにリダイレクト設定をする場合

wwwなしで統一するかつhttpsにリダイレクト設定をする場合

2~3行目がhttpsにリダイレクトする設定になります。4~5行目は先ほど紹介したwww有無を統一する記述になりますが、先ほどとの違いは一点「http://」の部分を「https://」に変更したことです。それ以外に違いはございません。
アドレスを直接入力してwww有無の統一を設定する場合でも同じように「http://」を「https://」に書き換えて設定すれば大丈夫です。