ワードプレスのサイトを運営していると時々発生してしまう「現在メンテナンス中のため、しばらくの間ご利用いただけません」を回復させる方法です。
このメンテナンス・ロック状態は原因も対策もシンプルですが、対処しないとダメージは深刻です。
「メンテナンス中のため・・・」
Orz….
私はせっかちなので、結構な頻度でこの状態に陥ってしまいます。特に、電話しながらついでにサイトを更新しているときや、サイトの更新中に何かに気を取られた隙にこの状態になってしまうことが多いです。
メンテナンス・ロック状態
この状態は英語だと「Briefly unavailable for scheduled maintenance. Check back in a minute.」(予定していたメンテナンスでしばらくの間ご利用いただけません。すぐに戻ります。)などと書かれているようです。
ロック状態になると
このメンテナンスロック状態では、バックエンドを含めたワードプレスサイト中へのアクセスがすべてこのメッセージに置き換わります。繰り返します。管理画面を含めてアクセス不能になります。
ロックされるとウェブサイトの運営上、非常に深刻です。訪問してきた人が全員このメッセージで帰ってしまいます。Google等のクローラーも同じ画面を見るので、すぐにトラフィックに影響することはないにせよ、対策を取らないままだと中期的に影響が出る可能性も否定できません。
ロック状態の解除方法
このメンテナンスロック状態は、条件が整っていれば1分以内に回復させることができます。回復できる条件は、ワードプレスの置かれているサーバーに書き込みできる状態(権限・環境)であることです。
ワードプレスのルートディレクトリ(サーバーによって異なる)にある隠しファイル「.maintenance」という33バイトのファイルを削除すれば、回復できます。
通常、Wordpressを含めたCMSではサーバーへの書き込みは意識せずにウェブサイト上から行っているので、サイトを普通にメンテナンスしているだけでは触ることがない部分になります。このため、ロックが生じたときに即座に対策できない状況になっている場合があるのが問題です。
ルートディレクトリへアクセスするには、
- FTPクライアントソフトウェア
- 契約しているサーバーが提供しているウェブ上のファイルブラウザ
のいずれかが必要です。
私も昨年までは3台使用していたパソコンすべてにFTPクライアントを入れアクセス可能な状態にしていたのですが、昨年パソコンを更新してしまってから新規サイトを導入していなかったのでFTPクライアントが入っていませんでした。
サーバーが提供しているファイルブラウザからのアクセスなら特別なソフトウェアを入れなくてもいつも記事を書いている環境でそのままアクセス可能です。こちらの方法の問題点は、サイトの更新環境でサーバーの認証情報を持っているとは限らない点です。サーバーへのログインなんて、少なくとも私は問題が起こったときと契約更新時くらいしかしないのです・・・。
他人が管理しているサーバーにあるワードプレスをロックしてしまったときは早急に管理人へ連絡しましょう。
ロック状態の原因と予防策
この状態は、ワードプレス本体、プラグイン、テーマなど、サイトのアップデート作業中にサイトとの通信を邪魔するとメンテナンスからの復帰ができなくなくなることで発生します。通信を邪魔する行為は、通信が途絶えた、戻るボタンを押した、サイト内を含めた別のページを開いた、などです。

サイトのアップデート作業
アップデートを開始すると、「メンテナンスモードを有効にします」と出てプラグインなどのダウンロード、展開、更新、メンテナンスモードの無効化と進んで更新終了となる流れがあります。
メンテナンスモードが有効になったあと、無効になるまでの間に何かが起こるとメンテナンス状態のままスタックしてしまうのです。自動的に削除する仕組みもないので、手動で「.maintenance」を削除するまでアクセスできなくなってしまいます。これがバグなのかというと仕様ではありますが、CRONが使えるサーバーでは自動で削除できるような仕組みがあってほしいなあとは思います。余計な権限はないほうが良いので、今のままで気を付けるのがベストでしょうか。
対策は、ながら更新をしないことです。が、ワードプレス本体や大きなプラグインの更新は時間がかかるので、他の作業をしながらやりたくなるのも人情です。せめて、ダメージが大きくならないように、FTPアクセスないしサーバーへのアクセスができる環境でないとき、例えばアカウント情報が手元にない出先だったり、サーバーをいじりにくいスマートフォンでの記事投稿時にサイトのアップデート作業をするのをやめましょう。というかこれからしないようにします・・・。
コメント