Webメンテナンスモードの要件

Webフレームワーク上での簡単メンテナンスモードの実装が流行っていた。

mod_rewrite でもできるとのこと。
http://php-tips.com/server/2011/05/mod_rewrite-htaccess-maintenance
http://web-tan.forum.impressrd.jp/e/2009/06/16/5880

mod_rewrite の例を参考にざっくり要件をまとめてみた。

  • メンテナンス用の HTML, css, js, 画像を表示する。
  • HTTP ステータス 503 を返す。
  • Retry-After ヘッダーの出力する。(オプション)
  • 特定の IP アドレスは除外する。(オプション)
  • メンテナンス期間を指定できる。(オプション)

メンテナンス用のコンテンツの扱いは配慮が必要だ。正規表現で振り分けるのであれば、静的ファイルしか置かれていないディレクトリのみ許可したほうが安全。