Dec 012007
 

Apacheのmod_rewriteではRewriteCondの判定に日付や時間を使うことができます(TIME_*変数)。
これを使うとある期間限定でのリダイレクト設定を施すことが可能です。

たとえば年末年始を休暇中のページにする。

RewriteCond %{TIME_YEAR}%{TIME_MON}%{TIME_DAY} >20071228
RewriteCond %{TIME_YEAR}%{TIME_MON}%{TIME_DAY} <20080104
RewriteRule ^/index\.html /vacation.html [R,L]

上の例では2007年12月29日から2008年1月3日の間、/index.htmlへのアクセスが/vacation.htmlにリダイレクトされます。ちなみに比較演算子には">="や"<="は使えません。 TIME_HOURやTIME_MINを使えば時間帯を指定することもできます。夜間はリダイレクトするといった設定も。

RewriteCond %{TIME_HOUR}%{TIME_MIN} >1800 [OR]
RewriteCond %{TIME_HOUR}%{TIME_MIN} <0900
RewriteRule ^/index\.html /sleep.html [R,L]

条件へのマッチ状況はRewriteLogLevel 4以上でチェックできますので、そちらでご確認ください。

詳しくはApache公式ドキュメントをどうぞ。
http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html

Sorry, the comment form is closed at this time.