SSブログ

Apacheのリダイレクト機能を使ってディレクトリ単位でURL転送を行う [Apache]

ホームページを引越したり、ディレクトリ構造を変えたりして
URLが変更になった場合、新しいURLを通知しなければなりません。

ホームページを引っ越した場合によく使うのが、
<META>タグのリロード機能です。

こんな感じです。

<meta http-equiv="refresh" content="10; URL=http://転送先URL">

この場合、10秒後に転送先URLに転送されます。

しかし、この方法だと、TOPページだけなら良いですが、
すべてのページに<META>タグを設定するのは、非常にめんどうです。

また、サーチエンジン対策的には、<META>タグはあまり
使用すべきではありません。
(この点に関しては、SEO対策の専門的な話になるので、割愛しますw)

このような場合、Apacheのリダイレクト機能を使用すると、
ディレクトリ単位で簡単に新しいサイトに転送することが可能になります。

.htaccess ファイルをたとえば以下のように作成し、転送元のディレクトリに
アップロードします。

Redirect permanent /old/ http://www.aoicchi.net/new/

permanent は、永久的なURLの移動という意味を示しています。
/old/ は、転送元URLのドメイン名の後のパスを指しています。
また、その後ろの http://~ はリダイレクト先のURLを記述します。

たとえば、転送元のドメインが http://www.umesyrup.net の場合。

上記の例では、
http://www.umesyrup.net/old/ 以下のファイルへのアクセスはすべて
http://www.aoicchi.net/new/ 以下にリダイレクトされます。

もう少し具体的に書くと、
 http://www.umesyrup.net/old/index.html
へのアクセスは
 http://www.aoicchi.net/new/index.html
に転送されます。
また、
 http://www.umesyrup.net/old/contents/hoge.html
へのアクセスも
 http://www.aoicchi.net/new/contents/hoge.html
に転送されます。

転送元、転送先に両方ファイル名を指定することも出来ます。

Redirect permanent /old/index.html http://www.aoicchi.net/foo.html

と書くと、
 http://www.umesyrup.net/old/index.html
へのアクセスのみが
 http://www.aoicchi.net/foo.html
に転送されます。

この例を使用すると、URLの転送サービスを運用することも出来ます。

以上の例は勿論、Apacheの設定ファイル中の
<Directry> あるいは <VirtualHost> ディレクティブに
記述することも出来ます。

なお、レンタルサーバで .htaccess が許可されていない場合は、
残念ながら<META>タグやJava Script等による方法しか使えません。


Redirect の詳細な情報は、Apache のドキュメントを参照してください。


Apacheクックブック 第2版 ―Webサーバ管理者のためのレシピ集
Ken Coar Rich Bowen
オライリージャパン
売り上げランキング: 63578



nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。