「WordPressで301リダイレクトを行う方法を知りたい。記事のURLを変更するから、古いURLから新しいURLにリダイレクトする必要がある、、、できれば簡単な方法で設定できればいいな。」
この記事ではこういった疑問に答えます。
- WordPressで301リダイレクトを行う2つの方法
- 301リダイレクトを継続しておく期間は1年
- リダイレクトは出来るだけ.htaccessで行う
301リダイレクトとは、「記事統合」や「ブログ引っ越し」などの際に利用する、ページ評価を引き継いだまま新しいURLに転送する方法のことです。
適切にリダイレクトを行わないとページ評価を失ってしまうので重要な設定でもあります。
そこでこので記事では、WordPressで301リダイレクトを行う2つの方法と、知っておくべき関連情報を合わせて解説します。
リダイレクトの種類に関しては「リダイレクトとは?(執筆中です)」で解説しているので、より深くリダイレクトについて理解するなら合わせて読んでみてください。
WordPressで301リダイレクトを行う2つの方法
WordPressで301リダイレクトをする方法は2つあります。
- その1:プラグインを利用する方法
- その2:.htaccessにコードを書く方法
それぞれの使い方や手順を解説します。
その1:プラグインを利用する方法
リダイレクトのプラグインは色々ありますが、WebFactoryLtdが提供する「301 Redirects」をおすすめします。
現時点(2020/10)では、301 Redirectsは知名度のないマイナープラグインですが、私がこのプラグインをおすすめする理由は以下の通りです。
理由としては、リダイレクトの定番プラグインである「Redirection」と「Simple 301 Redirects」がアップデートされておらず、最新のWordPressバージョンで未検証であるためです。
他にも、利用者の多いプラグインでいうと「301 Redirects – Easy Redirect Manager」がありますが、以前、セキュリティホールが発見されていたのでおすすめしません。
ナオ
301 Redirectsの使い方
301 Redirectsの使い方はとても簡単です。
リダイレクト元のURL:https://naoweb.jp/old
リダイレクト先のURL:https://naoweb.jp/new
そして、リダイレクト先のURLを「New Link」に入力します。
画像通りに、/(スラッシュ)を忘れないようにしてください。
その2:.htaccessにコードを書く方法
.htaccessファイルに転送処理の記述を行います。
リダイレクト元のURL:https://naoweb.jp/old
リダイレクト先のURL:https://naoweb.jp/new
この場合、以下のコードを.htaccessに追記します。
RewriteEngine On
RewriteRule ^old/ https://naoweb.jp/new/ [R=301,L]
実際に.htaccessに記述します
記述するまでの手順は次の通りです。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
あとは、変更内容を保存するか、ファイルをアップロードすれば転送処理が完了です。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteRule ^old/ https://naoweb.jp/new/ [R=301,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteRule ^blog/old/ https://naoweb.jp/blog/new/ [R=301,L]
</IfModule>
ナオ
301リダイレクトを継続しておく期間は1年
301リダイレクトの方法は分かったけど、「どのくらいの期間継続しておけばいいのか?」という疑問が浮かぶと思います。
結論から言うと、301リダイレクトしておく期間は「1年」です。
「1年」の根拠としては、、、Googleのジョンミューラー氏がTwitterで以下のように言及しています。
https://twitter.com/JohnMu/status/1086241155728195584
301 is permanent, it means forever and that’s a mighty long time, but I’m here to tell you, there’s something else: the server maintenance.
After a few years the old URLs are often no longer accessed & you can drop those redirects.If they’re no longer needed after a while (usually I recommend keeping them at least a year), and you don’t see traffic to them, then removing them is fine since it makes long-term maintenance easier.
簡単に和訳すると、「基本的に最低1年間はリダイレクトしておきましょう。あと、リダイレクト元からのアクセスがなくなったら削除していいよ。」とのことです。
ナオ
リダイレクトは出来るだけ.htaccessで行う
301リダイレクトを行うなら、プラグインで行う方が簡単ですが、可能な限り.htaccessで行った方が無難です。
理由は、リダイレクトを行なっているプラグインが急に更新されなくなったり、放置されてしまうと、不具合やハッキングなどのトラブルが起こる可能性があるからです。
実際、定番プラグインの「Simple 301 Redirects」は、既に1年以上更新されていませんし、プラグインが放置されることはよくあることです。
ナオ
というわけで以上です。