.htaccessを使って503にリダイレクトする[追記あり]

2015年4月13日Web-log・ココログ関連,WordPress,パソコン・インターネット

サーバの更新(移転)作業をしています。

準備作業がなかなか大変で、思うように進みません。

移転中は、本ウェブサイトへのアクセスできないことをおしらせしたいです。こう言う時は全てのアクセスをhttpの503にリダイレクトして、メンテナンス画面にしたいです。.htaccessを設定すればできるはずと思って検索したら、次のウェブページを見つけました。

ここに記載されている方法の通り、バッチリできました。ありがとうございます。ですが、一部記載ミスがあるようです。"="が不要です。また、特定のURLをアクセスしてきた時に例外を設定するようにしました。以下の場合だと、"/aaa/*"にはアクセスできるようにします。

# Maintenance-503
ErrorDocument 503 /503-maintenance.shtml
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI} !/aaa/.*
    RewriteCond %{REQUEST_URI} !/503-maintenance.shtml
    RewriteRule ^.*$ - [R=503,L]
</IfModule>

上記のページでは、画像を埋め込むためにbase64で画像をエンコードして埋め込んでいます。簡単な画像だったら、SVGで作成して埋め込んだ方が、データが小さくてすみます。次の方法をご覧ください。

503メインテナンス画面

この方法を使って、一時的にメインテナンス画面にして、サーバ証明書を入れ替えました。サーバ証明書の入れ替えはうまく行きました。

[amazonjs asin="4873113814" locale="JP"] [amazonjs asin="4877833498" locale="JP"]

(追記 2015-04-13 01:35)

REQUEST_URIの指定方法が間違っていたので修正しました。また、例外を設定できるようにしました。次のウェブサイトで、.htaccessのテストができます。

(追記 2015-04-13 20:33)

コメントしたいのですが、ユーザ登録しないとできないようなので、やめておきます。

Posted by お市のかた