301・302リダイレクト方法

リダイレクト方法301と302のリダイレクト方法の違い

まずはじめに301リダイレクトと302リダイレクトの違いを説明していきます。以下が301・302リダイレクトの違いです。

リダイレクト方式 301リダイレクト 302リダイレクト
意味合い 恒久的・永久的に転送(リダイレクト) 一時的転送(リダイレクト)
内容・用途 ドメイン変更
HPの結合
モバイルページ転送
キャッシュ キャッシュする キャッシュしない
PageRank 渡す(現在は不明) 渡さない
検索順位への影響 特になし(現在は不明) 特になし

301リダイレクト

古いドメインで運営していたページを新しいドメインのページに変更する。
以下のコードを.htaccessに記述し、リダイレクトしたいページの直下に設置します。

たとえばold.comをnew.comにリダイレクトしたい場合は.htaccessをold.comの直下に設置

suPHP_ConfigPath /home/hoge/old.com/xserver_php/
AddHandler fcgid-script .php .phps
FCGIWrapper "/home/hoge/old.com/xserver_php/php-cgi" .php
FCGIWrapper "/home/hoge/old.com/xserver_php/php-cgi" .phps

RewriteCond %{HTTP_HOST} ^(old\.com)(:80)? [NC]
RewriteRule ^(.*) http://new.com/$1 [R=301,L]

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

下記に記述してるコードはエックスサーバーでのhtaccessを読み込むコードになるので他のレンタルサーバーに合わせて記述してください。中には記述しなくてもいいサーバーもあります。サーバー内のディレクトリになります。

suPHP_ConfigPath /home/hoge/old.com/xserver_php/
AddHandler fcgid-script .php .phps
FCGIWrapper "/home/hoge/old.com/xserver_php/php-cgi" .php
FCGIWrapper "/home/hoge/old.com/xserver_php/php-cgi" .phps

一番大事なのは6,7行部分で以下の部分が古いドメインから新しいドメインにリダイレクトする記述になります。

RewriteCond %{HTTP_HOST} ^(old\.com)(:80)? [NC]
RewriteRule ^(.*) http://new.com/$1 [R=301,L]

6行目の記述の(old\.com)この部分がドメインの名前になります。
.comの前に「\」を入れて記述をします。「old」は任意の名前に入れます。

7行目の以下の記述は「http://」から記述をして「.com/」の後に「$1」と記述してあげてください。

RewriteRule ^(.*) http://new.com/$1 [R=301,L]

最後の記述はワードプレスでのサイト運営をしてる時の記述になります。ワードプレスで運営をしてる時は以下のコードを記述してあげてください。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

www有無の統一

urlのアクセスも下がりますのでSEO対策のためにもwww.にアクセスがあった場合は統一を図るようにしましょう。以下の記述は「new.com」にアクセスがあった場合はwww.にリダイレクトする記述になります。

RewriteCond %{HTTP_HOST} ^(new\.com)(:80)? [NC]
RewriteRule ^(.*) http://www.new.com/$1 [R=301,L]

参考サイト

サクラサーバーでの301リダイレクト方法

「www.test.com」を「test.com」に統一したい時に301リダイレクトは以下の記述です。

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

以下のコードにアクセスがあった場合は

(www\.test\.com)

「www.」を抜いた「http://test.com」にリダイレクトされるといい記述になります。

http://test.com/$1

サクラサーバーでの301リダイレクト

サクラサーバーでの301リダイレクト参考サイト