WordPress本体やプラグインのアップデートをしていて、『現在メンテナンス中...』というメッセージが出てしまってサイトが表示されないことがあります。
まあ、ほっとけば元に戻るのですが『いやいや、早く元に戻したい!』という人のために、手動で解除する方法を説明します。
とてもかんたんです。数秒で終わります。
現在メンテナンス中のため、しばらくの間ご利用いただけません。
これをはじめて見たとき『死んだ...』と思いました。味気ない文章だけがでるのでよけいに葬式の気分です。ただ意外と見るんですよね、これ。
じつはこの表示、最大でも10分したら勝手に解除されます。ただ、この10分がたえられない、『どれだけの利益が逃げるんだ!』『はやく復帰しろ!』という人もいるでしょう。
そんな人のために、なぜ起きたのかは後回しにして、まずは手動で解除する方法から。
解決後回しで解除
WordPressのホームディレクトリ(***/DocumentRoot)にある.maintenanceファイルを削除します。解除はこれだけです。
一応バックアップを取っておいてください。バックアップファイルを使うことはありませんが、作業上の最低限のルールです。
あたまにドット(.)がついてるので隠しファイルです。Linuxコマンドを使っている人は、lsコマンドのオプションにaをつけて下さい。そうしないと隠しファイルは見えません。
メンテナンス中で止まる理由
『メンテナンス中...』で止まってしまうのは、アップデート作業が途中で異常終了して.maintenanceファイルが残ってしまうから。
一応、WordPressにはアップデート作業のエラー処理が入っています。そのとき.maintenanceファイルを削除してくれるのですが、通信の予定外の遮断がおきると『メンテナンス中...』のままになってしまいます。
通信状況が悪くアップデート作業がタイムアウトするときにも起き、タイムアウト時間はWebサーバーやPHPの設定でチューニングされています。
これらの設定を変えてタイムアウト時間を延ばすこともできますが、専門知識がいるのでだれかに見てもらった方がはやいです。
『自分でできる!』という人はWebサーバーやPHPのログファイルを解析してください。
もしかすると、データベースの設定も見ることになるかもしれません。
WordPressのメンテナンス処理のしくみ
WordPressのメンテナンスのしくみはかんたんです。.maintenanceファイルがあるときは『メンテナンス中』、なければ『通常運転』です。
だからファイルを削除するだけで解除できるんですね。
.maintenanceファイルの中にはメンテナンスを開始した時間が保存されています。
これを見て、ほっといても10分後にはかならず解除するようになっています。
これぼくが勝手に言ってるわけではありません。ソースコードを見て確認しました。
最後に、メンテナンスページはなんかダサいですよね?WordPressではこれをカスタマイズする方法が用意されています。