ホーム > ITネタ(TIPSとかも) > .htaccessを使ってリダイレクトする

.htaccessを使ってリダイレクトする


.htaccessを使ってリダイレクトする
サイトの移転時に、
「301リダイレクト」
という手法を使います。

.htaccessというファイルにリダイレクトの処理を記載するわけです。

FTPの移転させたいディレクトリに、「.htaccess」というテキストファイルを設置すればOKです。
(ドットで始まるファイルだからWindows上では作れません&拡張子は不要です)


そしてそのリダイレクト形式は、大体以下の3種類のどれかかと思います。

1.URLの一部を書き換えた形でリダイレクトする
2.URLがなにであろうとサイトトップへリダイレクトする
3.拡張子だけ変更する

ひとつひとつ解説&ソースコードを紹介しようと思います。



1.URLの一部を書き換えた形でリダイレクトする
ディレクトリ構造は変更がなく移転する処理に使います。

Redirect permanent /test/ http://www.shtml.jp/htaccess/
とすれば、http://www.shtml.jp/test/以下にあるファイルへのアクセスがあった場合には、リダイレクトされます。例えば、 http://www.shtml.jp/test/basic.htmlへのアクセスは、http://www.shtml.jp/htaccess /basic.htmlへリダイレクトされます。


サンプルコード:

Redirect permanent /test/ http://cyborg-ninja.com/htaccess/
具体的な動きは、

http://www.設置したサイト.com/test/ にアクセスすると http://cyborg-ninja.com/htaccess/ へ。


http://www.設置したサイト.com/test/aaaaa.html にアクセスすると http://cyborg-ninja.com/htaccess/aaaaa.html へ。


http://www.設置したサイト.com/test/category/category2/bbbbb.html にアクセスすると http://cyborg-ninja.com/htaccess/category/category2/bbbbb.html  へ。

2.URLがなにであろうとサイトトップへリダイレクトする
古い方の全URLを、リダイレクト先のトップページに集約したい場合に使います。

.htaccess に下記のように記述すると良いみたいです。
RedirectMatch 301 .* http://www.web-how.jp/
これで、どのURLにアクセスしてもトップページ(http://www.web-how.jp/)に301リダイレクトで飛ぶようになります。


サンプルコード:

RedirectMatch 301 .* http://cyborg-ninja.com/
具体的な動きは、

http://www.設置したサイト.com/ にアクセスすると http://cyborg-ninja.com/ へ。


http://www.設置したサイト.com/test/aaaaa.html にアクセスすると http://cyborg-ninja.com/ へ。


http://www.設置したサイト.com/test/category/category2/bbbbb.html にアクセスすると http://cyborg-ninja.com/  へ。

※ただし注意点が!
・ドメインが変更になるリダイレクト時に使えます。同ドメインでリダイレクトすると永久ループにハマルので注意



3.拡張子だけ変更する
画像がgifからjpgに変わりました とかの時に使います。

最初の事例で紹介したように、画像ファイルだけを移動させたい場合は、どうすればいいのでしょうか?
ちゃんと、パターンマッチによるリダイレクトも可能になっています。「RedirectMatch」というものを使います。
RedirectMatch (.*)\.gif$ http://www.anotherserver.jp$1.jpg
などとします。


サンプルコード:

RedirectMatch (.*)\.gif$ http://cyborg-ninja.com$1.jpg
具体的な動きは、

http://www.設置したサイト.com/aaaa.gif にアクセスすると http://cyborg-ninja.com/aaaa.jpg へ。


http://www.設置したサイト.com/test/bbbbb.gif にアクセスすると http://cyborg-ninja.com/test/bbbbb.jpg へ。

参考:
.htaccessでリダイレクト機能を利用する方法
.htaccessを使ってトップページ以外のアクセスを全てトップページへ301リダイレクトする方法 Webノウハウのつぼ



  1. コメントはまだありません。
  1. トラックバックはまだありません。