サーバーのログを見ていると、以前のトップファイル(あえてtop.phpとしていた)にアクセスする人がかなり多い。
もしかしたら、ページが表示されなくて未だに閉鎖中と思う方も多いと思ったので、リダイレクトしホームページを見ていただくようにした。
ネットで調べてみると幾つかの方法があるようです。
おもなリダイレクトの方法のなかから三つを試してみた。
- 301リダイレクトと呼ばれる方法で、.httaccessを使うなどして行うもの。
- HTML<
meta http-equiv="Refresh" ...>
を使う方法 - JavaScriptの
location.href
、またはlocation.replace()
を使う方法
サーバー側に.htaccessを設置する方法。具体的なコードは以下。
Redirect permanent /top.php http://hogehoge.jp/index.php
Redirect permanent /top.html http://hogehoge.jp/index.php
top.phpにアクセスした場合に、index.phpにリダイレクトする
top.htmlにアクセスした場合に、index.phpにリダイレクトする
2.HTMLファイルのヘッダーに直接書き込む方法
head要素内に下記のようなコードを書けば良いだけです。簡単。しかし・・・
<meta http-equiv="Refresh" content="0; URL=/index.php">/index.php に0秒後にリダイレクトする
*古いURLにリダイレクト用のHTMLを残しておかねばならない。
3.JavaScriptを使ってリダイレクトする
しかし
location.href
を使うと"「戻る」ボタンで戻れない問題"が発生するので、履歴の残らないlocation.replace()
の方がいいかも(こちらでは戻れる)。この手法も古いURLにリダイレクト用のHTMLファイルを置いておかねばならないという点で、1.に劣る。
したがって、今回は1.301リダイレクトの手法を選択した。