301リダイレクト(302リダイレクト)の.htaccessでの設定方法は簡単なのでWordPress環境でもオススメ

Webページを移動したりURLを変更した時は、新しいURLへ自動でリダイレクトさせたいものです。
せっかく訪れてくださったユーザー様を
「ページが見つかりません」
等のメッセージで追い返すのは申し訳ないからです。

設定方法は、Webサーバーが、Apache(アパッチ)で稼動している場合は .htaccessファイルに簡単な1行を加えるだけなので非常に簡単です。

恒久的な転送時に使用する「301リダイレクト」
及び
一時的な転送時に使用する「302リダイレクト」
の両方の書き方と、機能しているのを確認する方法を示します。

301リダイレクトの .htaccess でのやり方

"old.html" というURLのページを
"http://domain.com/new.html" に301リダイレクトさせる方法は、下記の1行を .htaccessファイルに記述します。

Redirect 301 /old.html http://domain.com/new.html

old.htm と new.html が同一ドメイン上の場合でも
http://domain.com
と、キチンとドメインを書いた方た良いでしょう。

そして .htaccessファイルをドメインのルートへアップロードさせ、old.html へアクセスすると
http://domain.com/new.html へリダイレクトされるはずです。

301リダイレクトされているかの確認方法

リダイレクトされているのは確認できても、果たして301なのかどうかという事が心配でしょうから、その確認のために次のサイトへ行きます。
http://web-sniffer.net/

redirect301-302-htaccess_01
HTTP(S)-URL の欄に、転送元のURLを入力します。
認証用画像の数字が230なので、230を入力します。
"Submit" ボタンをクリックします。

redirect301-302-htaccess_02
「301 Moved Permanently」と表示されましたので、恒久的な301リダイレクトされているという事が確認できます。
そしてLocation項目には、転送先のURLが表示されています。

302リダイレクトの .htaccess でのやり方と確認方法

302リダイレクトの場合の書き方は、下記の様に301を302に変更するだけです。

Redirect 302 /old.html https://comp-lab.net/new.html

redirect301-302-htaccess_03
「302 Found」となっているのが確認できます。

WordPressでのリダイレクトより .htaccessでのリダイレクトの方が迅速

WordPress環境においては「Redirection」等のプラグインでリダイレクトを行う事も可能です。
しかし .htaccess に記述しておくと、WordPressでのリダイレクト処理の前にリダイレクトが行われるので、その方がサーバーへの負担も少ないし迅速です。

WordPressでは現行のURLのみをリダイレクトすればOK

WordPress環境においてURLを "old.html" から "now.html" に変更したケースを想定します。
この場合、内部的には old.html から now.html へ恒久的転送されるので、old.html へアクセスすれば勝手にnow.htmlへ301リダイレクトされます。

そして、now.html をさらに "http://domain.com/new.html" へリダイレクトさせる場合について考えます。

redirect301-302-htaccess_05

この場合上記の様に、WordPressに関する記述の後にリダイレクト項目を書かないと駄目と思ってしまうかもしれません。
何せWordPress内部で old.html から now.html へと転送されているわけですから。

ただ、記述する位置に関しては、WordPress関係項目の先でも後でもどちらでも機能しますので、全く気にする必要はありません。

サブコンテンツ

このページの先頭へ