本記事のソースコードの利用によって生じた損害について、当方は一切の責任を負いません。ご自身の判断と責任のもとで参照・ご利用ください。
WordPressの管理画面を開いたら、白い枠の中に一行だけ残っていました。「現在メンテナンス中のため、しばらくの間ご利用いただけません。」
ログイン画面にも進めません。管理画面も、サイトの表側も、同じ一文で止まっています。どのURLを叩いても、返ってくるのはこの一行だけでした。
おかしいのは、メンテナンス系のプラグインを入れていないことです。「メンテナンス中にする」という設定をした覚えもありません。表示させる仕組みを自分では入れていないのに、表示だけが出ている。最初の数秒は、そこで手が止まりました。
直前に何をしたかをたどります。プラグインの更新をかけて、それが途中で失敗していました。心当たりはここだけです。原因を大きく見積もると、対処も大きくなります。まず一番小さい可能性から潰します。
WordPressは、更新をかけている間、ルートに .maintenance という小さなファイルを一時的に作ります。あの一文は、このファイルがある間だけ出る仕組みです。更新が正常に終われば、ファイルは自動で消えます。ところが更新が途中で止まると、ファイルだけが取り残されます。残ったファイルが、いつまでも「メンテナンス中」を映し続けていた、というのが今回の中身でした。
対処は単純でした。FTPでサーバーにつなぎ、WordPressのルート、wp-config.php と同じ階層を開きます。そこに .maintenance がありました。これを削除します。作業はそれだけです。
一つだけ引っかかる点があります。.maintenance は隠しファイルです。FTPクライアントによっては、隠しファイルを表示する設定にしておかないと、一覧に出てきません。ファイルが見当たらないときは、先にこの設定を確認します。
削除して、管理画面を開き直しました。いつもの画面が戻ってきました。(拍子抜けするくらい、あっけない)
そのあと、失敗していた更新をもう一度かけ直しました。中断したままだと、プラグインが古いバージョンで止まっていることがあります。動いて見えても、更新は最後まで通しておいて、バージョンがそろっているのを確認しました。
この手の操作は自己責任です。消す前にバックアップを取るかどうかは、環境によります。私は取らずに消しました。消すのはファイル一つで、戻すのも同じ手間だと判断したからです。
一言で言えば、「メンテナンス中」が消えないのは、たいてい .maintenance の消し忘れです。プラグインを入れていなくても、このファイルさえ残っていれば表示は出ます。ルートの .maintenance を消せば戻ります。今回は、それで終わりました。