昔、どこかで見かけたので誰かしらやっているだろうと思ったんだけど、見つからなかったから作った。参考文献にあるスクリプトを参考にしたものの、意図が違うようなので新しく作った。
使い方と動作
- 新サーバを確保する(FTPできるようにしておく)
- 旧サーバに404.cgiと.htaccessを仕込む
- 旧サーバから新サーバに必要なファイルを転送する
- 転送を確認したら旧サーバから転送済みファイルを削除する
- 削除されると404になる、すると.htaccessによって404.cgiが呼び出される
- 404.cgiは何が無かったのかを考えて、”新しい場所を案内”する
(たんに新URL移動した、というだけではユーザビリティがよくない) - 必要があれば数秒後に新しいURLを読み込ませることができる
(しかし、移転なので、ブックマークの変更などがあるだろうから、自動転送ではないほうが望ましいと考える)
※このプログラムは十分に理解してから使わないと、新旧サーバー管理者やネットワークトラフィックなどに迷惑を掛けることがあるので、注意すること。
※サイト管理者(=それなりの知識や技術を持っている)が使うものなので設置方法などは記載しない。
ダウンロード
サンプル.htaccess
DirectoryIndex 404.cgi ErrorDocument 404 /404.cgi |
スポンサードリンク
404.cgi
#!/usr/local/bin/perl############################################################################## # サイト移転案内プログラム ############################################################################## # License GPL # Copyright 2008 CASEY # History # – 2008-12-10 Ver.0.01 初版作成 use strict; # 引越し先の新URL(引数のない転送先URL)をここに設定(スラッシュなし) print “Content-Type: text/html; charset=Shift_JIS\n\n”; <body> exit; __END__ |
参考文献
- サイト全体の引越し(URL転送)についての覚書 :
|| Not Found || - core – Apache HTTP サーバ :
core - Apache HTTP サーバ バージョン 2.2 - mod_alias – Apache HTTP サーバ :
mod_alias - Apache HTTP サーバ - .htaccessでリダイレクト機能を利用する方法 :
.htaccessでリダイレクト機能を利用する方法
コメント