WEBページで重要なことは、ページの評価です。
ページの評価は、信頼性・権威性・専門性ですが、信頼性と権威性はページの評価に直結します。
サイトのリニューアルでページのURLを変更しなければならない、新たなページを新設して情報をまとめたりすると評価がゼロになります。
ページの評価はURL単位で行われるので、URLが変更されれば評価はゼロから始まります。
困りますね。そこで、ページ評価を移動する301リダイレクトです。
目次
.htaccessを使用して302リダイレクトを行います。以下に説明するリダイレクト方法は1番簡単な方法ですが「mod_rewriteの機能」を使うので使用しているサーバーが対応しているかを確認して下さい(一般的なレンタルサーバーなら対応しています)。
#ページ評価を引き継ぐ301リダイレクト RewriteEngine on RewriteRule ^idoumae/no_page.php$ http://www.idougo.com/no_page/url.php [R=301,L]
上記の記述を.htaccessに記載してルードディレクトリに設置すればOK!注意したいことは、.htaccessは最も下位のディレクトリのものが優先されます。
意図通りにリダイレクトしない場合は、別の.htaccessの存在を疑ってみましょう。私はこれで2時間悩みましたorz
リダイレクトが機能しているとアクセスすればスグに転送先にリダイレクトされます。ただ確実に301リダイレクトになっているか確認は必要です。以下のサイトで確認することが出来ます。
以前は、301などのリダイレクトをするとページ評価が下げられると言われていました。
しかし現在は、完全に引き継いでくれるようです。
30x redirects don't lose PageRank anymore.
— Gary "鯨理" Illyes (@methode) 2016年7月26日
「30xのリダイレクトでページランクを失うことはもうない」とGoogleの人が言ってます。300番台のリダイレクトで評価を失う恐怖はもうなくなったとして安心して下さい!
昔、301リダイレクトを悪用してページ評価を操る愚行をしている輩がいたのでページ評価を失う設定だったようです。
GoogleのSEO的にはどっちでもいいようです。殆ど同じ動きをするので「気にしなぁ~い」と言っています。
それでも、「301リダイレクト」と「302リダイレクト」には意味はありますのでご紹介。
301リダイレクトの動き
302リダイレクトの動き
ページの評価については、どちらも同じ動きをするので301でも302でも問題ありません。
ですが、インデックスされるページがポイントです。
新たにページを作成して、ページを移行させたいならインデックスされるページは転送先のページが適切でしょう。再びURLを元に戻すつもりが無いなら302リダイレクトでがベストです。
ページの評価はURL毎に割り振られています。
例えば、「www.promeshi.com」と「promeshi.com」は別のURLとして認識されます。
もし被リンクがwww有りと無しで50ずつあったとしたら、本当は100の被リンクを得られていたはずなのに半分しか得られていないことになります。嫌ですよね。
そこで、URLの統一を行います。www有りと無しを決めて、そちらに302リダイレクトをします。
#wwwの有り無し統一 有りに統一する RewriteEngine on RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC] RewriteRule ^(.*) http://www.example.com/$1 [R=301,L]
URLにwwwが無かったら、wwwをつけてリダイレクトする。
#wwwの有り無し統一 無しに統一する RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.example\.com)(:80)? [NC] RewriteRule ^(.*) http://example.com/$1 [R=301,L]
URLにwwwが有ったら、wwwを削除してリダイレクトする。
これで、URLを厳密に1つにして評価を分散させることを防ぐことが出来ました。
実はindex.phpも忘れがちですが厄介な存在です。「promeshi.com/index.php」も「prmeshi.com/」も同じページですよね?
ついでにindexの有り無しについても統一させましょう。
#indexの有無の統一 ナシに統一する RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.php RewriteRule ^(.*)index.php$ http://www.example.com/$1 [R=301,L]
これでindex.phpがついたURLでアクセスされたら、index.phpを削除して301リダイレクトします。
#ページ評価を引き継ぐ301リダイレクト RewriteEngine on RewriteRule ^idoumae/no_page.php$ http://www.idougo.com/no_page/url.php [R=301,L] #wwwの有り無し統一 有りに統一する RewriteEngine on RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC] RewriteRule ^(.*) http://www.example.com/$1 [R=301,L] #indexの有無の統一 ナシに統一する RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.php RewriteRule ^(.*)index.php$ http://www.example.com/$1 [R=301,L]
これで、新設したページに旧ページの評価を引き継ぎ、wwwを有りにindex.phpは無しにURLを厳密化するSEOに有利なリダイレクト記述が完成です!
それぞれのURLは、自身のサイトに併せて書き換えて下さい!
最近はGoogleの挙動が分かりやすくなって良いです。
少し前まで、スパマーとの戦いでGoogleは手の内を明かさず不可解な評価方法や評価ポイントの不明瞭さで大変でした。
しかし、ここ最近は「人が見て素敵なサイトは評価する」に相応しいランキングになり、評価ポイントも明瞭になっています。
一昔前のスパム行為をすれば、一発でランク外に吹き飛ばされます。
しかし、逆に謎のランク外処置をされて困惑することもありますが、大抵、原因は自分にあります。より厳密に厳格に評価されていると実感する今日この頃です。