wwwの「有り/無し」の統一リダイレクトの設定方法


wwwの有り無しを、そのままにしていませんか?


両方のインデックスは不都合です!


検索エンジンに対しても、どちらか1つに統一を!


301 Redirect(301リダイレクト)で、URLの正規化!

GoogleはURLの正規化を「301リダイレクト」を推奨しています。
リダイレクトとは


検索エンジンでは、「www有り」も「www無し」も、それぞれ別々のページと認識します
つまり、同じページを2つ持ってる事になります。「index.html」も同様です


同じページをインデックスすることは、検索エンジンにとっても良くありません
そこで、301のリダイレクトを使って、それぞれ統合して、1つのページとして認識


「www有り」「www無し」は、検索エンジンにとっても、どちらが有利と言うこともない
お好きな方を選んでも問題ありません


Googleウェブマスターツールで、「www」の有り無しを統一の設定にし、
かつ、301リダイレクトで、「www」の有り無しを、正規化しておきましょう




Googleウェブマスターツールで設定

Googleウェブマスターツールで「www有り」「www無し」を設定する事が可能

ウェブマスターツールの右上のある「サイトの設定」をクリック

サイトの設定

www有り無しを設定





リダイレクトで「www」有りと無しの統一する具体的な設定手順

「.htaccess」のファイルを利用する方法

「.htaccess」ファイルの作成と記述

「.htaccess」のファイルを利用する方法です。
「.htaccess」のファイルの作り方は、テキストエディタを使います。

テキストエディタで.htaccess.txtというファイルを作り以下の記述を記載します。
メモ帳で作成しても問題無いようですが、出来れば、高性能なテキストエディタで

テキストエディタが無い方は、こちらからダウンロードして下さい
【FREE】テキストエディタの定番と言えば!Windows10対応




【注意】


ファイル名は「.htaccess」にするのですが、「.」を拡張子として認識する為、
仮に「a.htaccess」とした名前で作成しておく

FTPにアップロードした後に、「.htaccess」に名前を変更します。
「.」ドットは、必要ですので消さないでくださいね。

元々「.htaccess」が、存在ていている場合は、新たに作成する必要は無いです







wwwの有り・無しを統一したい場合

「www有り」→「www無し」に統一する場合

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.○○○○○\.com
RewriteRule ^(.*)$ http://○○○○○.com/$1 [R=301,L]

「www無し」→「www有り」に統一する場合

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^○○○○○\.com
RewriteRule ^(.*)$ http://www.○○○○○.com/$1 [R=301,L]


ドメイン名(○○○○○)と、種類(com)を、置き換えて下さい

申し訳ないですが、環境の問題で「\」が「バックスラッシュ」バックスラッシュになってるので

RewriteCond %{HTTP_HOST} ^www\.○○○○○\.com
RewriteCond %{HTTP_HOST} ^○○○○○\.com

コピペする際は「バックスラッシュ」⇒「\」に置き換えてください。



URL「www.○○○○○.□□□□.com」の場合(サブドメイン)


RewriteCond %{HTTP_HOST} ^www\.○○○○○\.□□□□\.com

「Options +FollowSymLinks」シンボリックリンク


仕様によっては、1行目の「Options +FollowSymLinks」を入れると、
500のエラーが表示されて、失敗する場合があるようです。
その場合は、1行目の「Options +FollowSymLinks」をはぶきます。



記述できたら、
仮に「a.htaccess」と名前にして、文字コードを「UTF-8」で「txt」で保存します。


「index.html」「index.php」の有り・無しを統一したい場合

「index.html無し」に統一する場合

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://www.○○○○○.com/$1 [R=301,L]

「index.php無し」に統一する場合

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.○○○○○.com/$1 [R=301,L]

「www無し」「index.html無し」に統一する場合

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.○○○○○\.com
RewriteRule ^(.*)$ http://○○○○○.com/$1 [R=301,L]

RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://○○○○○.com/$1 [R=301,L]


ドメイン名(○○○○○)と、種類(com)を、置き換えて下さい

申し訳ないですが、環境の問題で「\」が「バックスラッシュ」バックスラッシュになってるので

RewriteCond %{HTTP_HOST} ^www\.○○○○○\.com

コピペする際は「バックスラッシュ」⇒「\」に置き換えてください。



「Options +FollowSymLinks」シンボリックリンク


仕様によっては、1行目の「Options +FollowSymLinks」を入れると、
500のエラーが表示されて、失敗する場合があるようです。
その場合は、1行目の「Options +FollowSymLinks」をはぶきます。



記述できたら、
仮に「a.htaccess」と名前にして、文字コードを「UTF-8」で「txt」で保存します。




「.htaccess」ファイルのアップロード
作成した「.htaccess.txt」を、FTPソフトを使ってアップロードします。

アップロード先は、ルートディレクトリ
(トップページの「index.html」が入っている、一番上のフォルダ)

FTPソフトが無い方は、こちらからダウンロードして下さい
無料で使える高速FTPソフト

ステータスコードの確認したい場合は
リダイレクトチェック