記事内に広告を含む場合があります
WordPressで運営しているサイトで、特定のページのみをリダイレクトしたい場合は、302リダイレクトではなく、301リダイレクトを設定すれば、ページランクを落とさず転送できます。
301リダイレクトは、.htaccessに書き込むやり方もありますが、トラブルになりやすいためおすすめしません。
プラグインを使いましょう。
『Permalink Redirect』と『Redirection』と2つのプラグインの使い分けについても解説するので、リダイレクト設定する前にぜひチェックしてみてください。
WordPressで301リダイレクトをする目的
301リダイレクトする場合とは
301リダイレクトをするのは、以下のような時です。
- WordPressのパーマリンク設定を変更した
- 特定の記事のスラッグを変更した
特に多いのがWordPressのパーマリンク設定を変更したい人ですね。
WordPressサイトを1年ぐらい運営して、パーマリンクを変更したいという人はかなり多いと思います。
[voice icon=”https://fujimotoyousuke.com/wp-content/uploads/2018/04/7232934be4bf7ca7352a26b692ad23ce.jpg” name=”” type=”l”]ちなみにわたしは、パーマリンク設定は「(ドメイン)/投稿名/」をおすすめします。その理由はWordPressのパーマリンクのおすすめの設定とその理由で解説しています。
パーマリンク設定で悩んでいる人はぜひチェックしてみてください。[/voice]
301リダイレクトと302リダイレクトの違い
さて、リダイレクトには、301リダイレクト以外に、302リダイレクトなど種類がいろいろあります。
この違いを知っておいて損は無いので覚えてください。
HTTPステータス | 使用目的 |
---|---|
301リダイレクト | 永久的にページ転送したい時に使用する ・新しいURLにずっと自動転送する ・サイトURLの評価を引き継ぐ |
302リダイレクト | 一時的にページ転送したい時に使用する ・サイトメンテナンス中に転送する ・サイトURLの評価を引き継がない |
このように、サイトのメンテナンス中など一時的に転送する場合は302リダイレクトを使用します。
ただ、パーマリンク設定を変更した場合や、特定の記事のスラッグを変更した場合などは、サイトURLの評価を引き継ぐ、301リダイレクトを使います。
[voice icon=”https://fujimotoyousuke.com/wp-content/uploads/2018/04/2e1550a3f185b88deff5238f98474e91.jpg” name=”” type=”l”]つまり基本的に、いまこのサイトを見てくれている方は、301リダイレクトをすべき人のはずです。[/voice]WordPressで301リダイレクトする方法
WordPressサイトで301リダイレクトするなら、大きく2つの方法があります。
- .htaccessファイルに直接記入する方法
- プラグインを使う方法
どちらでも301リダイレクトの設定はできます。
.htaccessファイルに直接記入できない環境もある
ただし、『.htaccessファイルに直接記入する方法』は、サーバー環境によってはできないことがあります。
なぜなら .htaccess はアクセスを制御するファイルで、少しでも間違った記述をするとサイトが壊れてしまうからです。
だから、レンタルサーバーによってはFTP接続で.htaccessを編集できないようにしていて、レンタルサーバーの管理画面から多少の変更ができるようにしているところもあるぐらいです。
.htaccessの記述方法をミスると、サイトがエラーを吐き出しまくったり、気づかぬうちにキャッシュ系に影響を与えてしまいます。
[voice icon=”https://fujimotoyousuke.com/wp-content/uploads/2018/04/0b23ba9e81f3ce3d7e050601cbf3d283.jpg” name=”” type=”l”].htaccessは、本当に難しいファイルです。企業のコーポレートサイトのような簡単なものであれば、SSL対応の記述や、ベーシック認の記述をする程度で良いのですが、アクセスが多いメディアサイトなどでは、キャッシュにかかわる記入をします。
FTP接続で.htaccessが編集できる環境(※エックスサーバーでは.htaccessの編集が可能)でも、記入をミスっていて、気づいていない人は、結構多いはずです。
というのも、これらひとつひとつは簡単な記入で、参考サイトのままコピペでも良いのですが、書き順があって301リダイレクトを一番最後に書いてはダメ(エラーを起こす可能性が高い)なんです。[/voice]
.htaccessファイルに直接記入する方法は初心者におすすめできない
一般的な普通のWordPressサイトの.htaccessには、以下のデフォルトの記述があります。
# 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
301リダイレクトについて解説しているサイトはたくさんあるんですが、結構それぞれ間違ったことを解説しているサイトが多いって思ったんですよね。
[voice icon=”https://fujimotoyousuke.com/wp-content/uploads/2018/04/c52d08453c78eceb6f3ea2d55f17cb52.jpg” name=”” type=”l”]301リダイレクトは、上記のこの記述より先に書かないといけないはずなんですよ。(※ネット上には、後ろに書くと指示しているサイトが結構ありました。)
リダイレクトがしっかりできていれば全然良いんですけど…。
[/voice]ということで、.htaccessに直接書き込むのは、おすすめできないです。
Web制作会社勤務のデザイナーやシステムエンジニアとか普段から .htaccess や .htpasswd を編集するような人なら、大丈夫だと思いますけど。
[voice icon=”https://fujimotoyousuke.com/wp-content/uploads/2018/04/63667b4d41ffd09a5d66defc605100a8.jpg” name=”” type=”l”].htaccessに301リダイレクトを記入するのは、ちょっとリスクがあると思うので、わたしはプラグインを使った301リダイレクトをおすすめします。[/voice]初心者が確実に301リダイレクトをする方法
パーマリンク設定を変更して301リダイレクトを設定する
パーマリンク設定を変更しているということは、WordPressサイトのすべての記事URLが変わっていることになります。
この場合はある法則に基づいてURLを自動転送してね!という指示の方法になります。
こういうケースでは、わたしは『Permalink Redirect』というプラグインを使って301リダイレクトをおすすめします。
この画面では、以下のようにパーマリンク設定を変更した時の設定内容です。
変更前:
(ドメイン)/%year%/%monthnum%/%postname%/
変更後:
(ドメイン)/%postname%/
これだけで、301リダイレクトは設定できます。
『Permalink Redirect』を使ってパーマリンク設定を変えたい時は、こちらの記事を参考にしてみてください。
[kanren2 postid=”7176″]特定のページを301リダイレクト設定する
特定のページURLを自動的に転送したい場合は、例えば記事のスラッグを変更した時ですよね。
Googleの評価も良い場合にスラッグを変更することは避けたいですが、時にその必要があるときもあるでしょう。
この場合は、このURLはこのURLに転送してね。と1つ1つのURLを細かく指示することができます。
こういうケースでは、わたしは『Redirection』というプラグインを使って301リダイレクトをおすすめします。
変更前:
(ドメイン)/子供青汁-口コミ/
※(ドメイン)/xn—-efu6ft27jvqe2zmp12a885e/
変更後:
(ドメイン)/kodomoaojiru-review/
『Redirection』を使って特定のページのみを変えたい時は、こちらの記事を参考にしてみてください。
[kanren2 postid=”9153″]まとめ
プラグインを使わず .htaccess に直接記入して301リダイレクトを設定する方法ができれば良いですが、正直なところ、.htaccessはいろいろ設定が書いてあって不具合が出やすいファイルです。
また.htaccessは気づかないうちにエラーも出やすいので、自信がある人のみしかおすすめできません。
ネット上の.htaccessの記入方法が、『えっ?それ違うでしょ。』というものもいくつか見つけたので、知らずうちに不具合を起こす可能性もきっとあるんだろうな。と推測できます。
WordPressで301リダイレクトをする時は、パーマリンク設定を変更した時か、特定ページのスラッグを変更した時だと思います。
わたしの経験上、パーマリンク設定を変更して301リダイレクトさせたい時は『Permalink Redirect』を。
特定ページのURLを301リダイレクトさせたい時は『Redirection』が良いと思いますので、ぜひ参考にしてください。
いずれにしても、.htaccessに直接リダイレクトルール(転送ルール)を書くよりプラグインを使った方が良いですよ![/voice]
『重複コンテンツを避けてアクセスを伸ばす方法』や『価値の低いブログ記事を削除する方法』でも解説しましたが、301リダイレクトを上手に使うと、アクセスが伸ばしやすいですよ。
『SEO対策マニュアル』で解説していますので、しっかりと勉強したい人はこちらをチェックしてみてください。
はじめまして。ブログ初心者のゆうすけといいます。
記事を拝見させて頂き、大変参考になりました。
よろしければ301リダイレクトについて、ご教授願います。
今回、AとBという2つのサイトをAに統合したいと考えております。(どちらもWordPress)
下記の点について知りたいです。
①プラグイン「Redirection」で、とりあえず一つの記事を設定しましたが、すぐに反映されず、当該記事をグーグルの検索結果からクリックしても、Bサイトを表示したままです。
しかし、アドレスを直接打ち込むとAサイトに遷移します。さらに、別の端末やブラウザで同じように直接アドレスを打ち込むとやはりBサイトのままです。状況すらよくわからず困っています。
②リダイレクトかうまくできた場合、Bサイトの記事の処理をどのようにするのが良いでしょうか。非公開か、下書きか、何もしないでそのままか、他に良い方法があるのでしょうか。
③記事を一つずつ時間をかけて統合する場合、デメリットはあるでしょうか。
突然ずうずうしいお願いをして失礼と思いますが、ヒントだけでもいただけたらとてもありがたいです。(特に①について)
どうかよろしくお願いします。
リダイレクト設定した内容が、Googleのインデックス結果にすぐ反映されることはなく、PVが少ないサイトなら、2週間以上かかることだってあります。
問題を切り分けた方が良いと思いますが、リダイレクト設定したのに、リダイレクト元サイトにアクセスできるというのは、単純に設定ミスだと思います。
この記事で紹介しているのは、パーマリンク設定やスラッグを変更した時の想定で、
別ドメインに301リダイレクトするなら、一般的には.htaccessを編集する方法が良いと思います。
プラグインでできるのかもしれませんが、細かい挙動を確認していないため、適している方法なのか、わかりません。
よろしくお願いします。