【WordPress】503エラーが発生して困った話

先月くらいから、私が作成した他サイトで503エラーが発生しておりまして。その発生から解決に至るまでを簡単にまとめてみました。

 503エラーとは

今回、私が遭遇したエラー503エラーとは、以下のようなものです。

 HTTPによる通信の際、クライアントからのアクセス要求に対するサーバー側からの返答コードの一つ。初めの5がサーバー内部のエラーであることを示している。このコードが表示される要因としては、

  • 当該ウェブサイトに瞬間的に多数のアクセスがなされ、サーバーが処理不能に陥った。
  • サーバーがメンテナンス中などで機能していなかった。
  • サーバ内の最大データ転送量を超過した。
  • 同一サーバ内の他のサイトへのアクセスの集中。

などが挙げられる。一度このエラーが発生してしまうと、サーバのトラブルが解消されない限り復旧しない。対処法としてはウェブサーバー側の高性能化、キャッシュを利用したデータの転送量および転送速度の向上などがある。

出典:Wikipedia

症状は、アクセスが多くなりがちな、夜20時~0時頃に発生していました。同時間のアクセス数を見てみると、100pv/h程度。

ちなみに表示されるエラー画面は以下のような感じでした。

原因調査

この状態になると、ブログの更新もままなりません。ダッシュボードも入れません。ということでよくわからないながらも調査をすることに。

色々試してみて、効果があればそれが原因かなという感じで進めます。

同時アクセス数拡張

はじめはアクセス数が多いのかなということで、ロリポップさんの「同時アクセス数拡張」なるものを試してみます。結果、効果はありませんでした。この程度のアクセス数で、疑ってごめんなさい。

WordPressテーマの変更

私が愛用する「STINGER PLUS2」。子テーマを作って、いろいろ弄っているのですが、それが悪さをしているのではないか、ということで。503エラー発生時に、親テーマに変更して様子見してみます。こちらも効果ありませんでした。

サーバーの問題

早々にお手上げだったので、サポートにメールをしてみることに。そのお返事がこちらです。

○○ 様

この度はお問合せいただき、誠にありがとうございます。
カスタマーサービス ×× よりご案内いたします。

お問合せいただいた件について調査した結果、主に【 http://~.jp/index.php 】
へアクセスが発生した時の処理に時間がかかることによって高負荷となっている事がわかりました。

同時アクセス数制限が発生している【 ~.jp 】アカウントについて調査した結果、
ご利用いただいているサーバー「xxxxxxx」は高負荷状態も発生しておらず正常に稼働している事がわかりました。

(以下略)

ということで、サーバーは問題ないそうです。疑ってごめんなさい。

 

結果

お手上げ。分からんもんは分からん。ということでブログ更新も滞りがちになりまして、放置してました。

しばらく経って、別件で調べ物をしていたときに、気になる情報を発見。まさかと思い、参考にしてみたところ…あっさりと解決しました。

原因はこちら

WordPress Popular Posts

ブログ閲覧数を元に人気記事をランキング表示してくれるプラグインです。私が愛して止まないプラグインの一つです。ウィジェットとしてサイドバーに配置しています。

こちらのプラグイン、ランキングを表示するためのデータをテーブルに保持しています。こちらのテーブルの容量が肥大化すると表示に時間がかかるそうです。今回はそれが原因で、503エラーになっていたようです。

私はこのプラグインを使って、ブログのトップページに24時間、7日間、30日間と3つのランキングを表示していました。ブログ開設当初はそれほど気にならなかったのですが、最近、サイト表示に少し時間がかかっているような気がします。

WordPress Popular Postsについては検索すると同様の症状の報告が出てきました。

 

設定の見直し

早速、設定を見直します。

今回、見直した項目は以下の通りです。

 

ログ上限

私のブログでは、24時間、7日間、30日間の3つのアクセスランキングを表示しています。ここでは、最長の30日間を指定しておけば十分です。

WPPキャッシュ期限ポリシー

キャッシュをデータから作る頻度の設定です。今回は1時間に設定しました。これで、1時間ごとにランキングが更新されます。

WordPress Popular Posts はデータを2つのテーブルで管理します。ひとつは最も人気のある項目を毎日保存し (これを「キャッシュ」と呼びます)、もうひとつは全期間のデータを保存します (こちらを「履歴データ」または単に「データ」と呼びます) 。

 

まとめ

ずっと愛用していただけに盲点でした。しばらくは様子見です。

 

コメントを残す

メールアドレスが公開されることはありません。