人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ウェブサイトのメンテナンス表示についての質問です。
一日のある時間帯をメンテナンス時間として、どのページにアクセスしても、特定の「メンテナンス中です」と書かれたページを表示させたいのですが、どのような方法が一番スマートでしょうか。
Apacheで制御できれば、それがよさそうな気がしますが。

●質問者: studio15
●カテゴリ:インターネット ウェブ制作
✍キーワード:Apache アクセス ウェブサイト スマート メンテナンス
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● b-wind
●16ポイント

サイト自体にそういう機能を作ってしまうのが確実ですが、

mod_rewrite が使えればわりと簡単にもできます。


RewriteEngine on
RewriteRule ^.*$ /maintenance.html [L]

もうひとつの方法としてはメンテナンス時用の DocumentRoot を作り、そこには maintenance.html のみ用意します。

そして

ErrorDocument 404 /maintenance.html

とするとほとんどすべてのページが not found になるので

maintenance.html がエラードキュメントとして表示されることになります。

この場合の欠点としては、ブラウザや設定によっては内蔵の 404 エラーページが優先して表示されることがあることです。

◎質問者からの返答

時間の指定をしていないようですが…

一日のある時間帯(例えば5?6時)などをメンテナンス時間としたいのです。


2 ● b-wind
●16ポイント

すいません時間指定は出来ません。

メンテナンスの前後に Apache を再起動することが前提です。

Apache のみでは時間指定は不可能なので、cron 等と連携することになります。


3 ● ton-boo
●48ポイント ベストアンサー

b-windさんの紹介されているmod_rewriteで、

RewriteEngine on
RewriteCond %{TIME_HOUR}%{TIME_MIN} >0100
RewriteCond %{TIME_HOUR}%{TIME_MIN} <0200
RewriteRule ^.*$ /maintenance.html [L]

としてはどうでしょう?

上記は1時から2時までのつもりですが、ひょっとしたら0100ではなく0059とかにするべきかもしれません(未確認です)。

◎質問者からの返答

ばっちりです。

あざっす!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ