ちょっとしたことならメンテ画面を出さずにパパパっ!っと修正することが多々ありますが、DBいじったりデザイン変更となると話は別です。間違えた設定でDBエラー。PHPエラーで真っ白で利用不可になるなど、注意しなければなりません。そこで、メンテナンスを行う際は、503のエラーコードを出力して、安心安全にメンテナンスを実行しましょう。
今回は、503エラーコードを使って、検索エンジン、ユーザー共に一時的な利用不可状態を知らせる方法をまとめます。
503エラーとは
HTTPステータスコードの一つ。一時的にサーバーにアクセスできないこと
このエラーは、大量にアクセスが集まったり、サーバーが倒れた時などにも表示される、サーバー側のエラーです。この状態にすれば、検索エンジンの新しいインデクシングは行わないとのこと。
万が一、障害を発生させ、真っ白なページを新たにインデックスされたら困りますので、503を出すことが望ましい。
やりかた
①メンテナンス画面を作る。
・テキストでmaintenance.htmlを作成。
・内容は「ただいまメンテナンス中」とかでOK
②.htaccessファイルを編集。
・サーバーから.htaccessをダウンロード。バックアップ。
・wordpressなら、beginの前に記載するとのこと。
・maintenance.htmlと.htaccess2ファイルをアップロードする。
ErrorDocument 503 /maintenance.html <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_URI} !=/maintenance.html RewriteRule ^.*$ - [R=503,L] </IfModule>
③確認
・接続状況確認
・成功すればどのURLをたたいてもメンテナンス中画面。
・失敗していれば真っ白。→バックアップしたものをアップロード
注意点
.htaccessは間違えるとループに突入したり、真っ白になるなど注意しなければなりません。
必ずバックアップは取り、慎重に行うようにしてください。