WordPress

WordPress:バズってないのに『503エラー』しかも『Xserver』原因は『F5アタック』

最近、サーバーの引っ越しによる独自ドメインの移管や、ワードプレスのテーマ変更などを頻繁に行いました。その過程で、知らない項目は一通りドハマりした訳ですが、一番苦しんだ『503エラー』が無事に解決したので、記録としてメモ致します。

『503エラー』って何ですか?

そもそもエラー自体、心臓に悪い現象ですが、慣れると画面と読み込みの雰囲気から、ある程度の原因予測が立つようになります。ただ、今回直面した『503エラー』は過去にも経験しているのですが、その時とは様子が違うのです。

システムエラーは同じ番号や画面であっても、複数の原因が潜んでいるから困ります。
結局は、一つずつ潰して行くしか無いんですよね。

アクセス集中のバズ

真面目に意味のあるブログ記事を一定数以上更新していると、メディアやSNSの影響でサイトがバズる(拡散が拡散を呼ぶ)ことがあります。勿論、一時的な爆発なので驚きますが、サーバーの同時アクセス制限が原因なので、ほとぼりが冷めれば治ります。

これを解消したいのであれば、耐久性のあるサーバーに変更するしかありません。ちなみに今回の事例は、バズ対策でおススメの『Xserver』で起こったことなので、原因は別にありました。

サイト自体が重い

写真や動画などコンテンツ自体が重い場合、アクセス渋滞が起こります。一定時間経過してタイムアウトされれば、やはりエラー表示されてしまうのです。例えるなら、動脈硬化の高血圧による脳梗塞でしょうか。

サイトの待機時間は『3秒ルール』と言われるぐらい、待てない人が多いです。
ラーメン屋さんの行列は当たり前のお国柄なので、この辺りに矛盾を感じます。

データ転送量の制限

サイトにデータを置いている場合、ダウンロードが集中すると制限が掛かります。
これも、バズと同じ意味合いです。

PHPのバージョン

『503エラー』はアクセス集中が原因と考えて間違い無いのですが、『PHP』のバージョンが古いと起こる可能性もあるので、サーバー経由でチェックしてみて下さい。ワードプレスを安価で構築させ、メンテナンスフリーだと思い込んでいるクライアントが、結果的に出くわすバチでもあります。

プラグイン

ワードプレスと言えば『プラグイン干渉』なので、FTP経由でプラグインファイル自体の頭に『アンダーバー』などでリネームし、一旦オフってみると一目瞭然です。面倒臭がらず、初期段階で実施すべき基本の『き』です。

ちなみにオフって一時的に回復しても、タイムラグで戻ってしまうことがあります。
そんな時は、下記のリンクをお試し下さい。

https://miyabix.com/wp/xserver-503-error-article-update/
https://miyabix.com/wp/xserver-503-error-article-update/

https://miyabix.com/wp/xserver-ah01068-got-bogus-version-error-site-display-too-heavy
https://miyabix.com/wp/xserver-ah01068-got-bogus-version-error-site-display-too-heavy

 『xmlrpc.php』不正侵入アクセス

『503エラー』の厄介なところは、サイト管理者である自分自身が管理画面にすら入れなくなることです。そうなると、サーバー経由でしか解決出来ない訳ですね。

順を追って説明しますが、ワードプレスでの投稿を『メール経由』で行っている方は、必見です。『xmlrpc.php』はパスワードさえ分かれば投稿出来るので、ランダムに不正アクセスが繰り返されます。これって、とんでもない数になるんですよね。

FTP経由で『xmlrpc.php』を削除してしまえば解決しますが、ワードプレスのアップデートで復活してしまうので、現実的ではありません。

でも、ご安心下さい。
『.htaccess』にて上記を追記すれば、アクセス出来なくなります。

IPアドレス制限

そもそも自分のサイトにアクセス出来ないのは、自身もその渋滞に巻き込まれているからです。ならば、自分しか入れないよう設定してしまえば解決します。

アクセス情報【使用中のIPアドレス確認】
アクセス情報【使用中のIPアドレス確認】

あなたのアクセスしているIPアドレス情報などをENVとJavaScriptで取得し表示します。あなたのIPアドレスからポ ...

上記リンクへ、アクセスして下さい。

すると、あら不思議。
自分の利用している『IPアドレス』が表示されました。

『.htaccess』を開きます。

上記コードを追加記載します。(※後で削除します)

これで、自分以外のアクセスは拒否されます。
アクセスしちゃいましょう。

ポイント

http://サイトURL/wp-login.php

管理画面に入れさえすれば、様々なことが解決出来るはずです。

https://miyabix.com/wp/saved-but-not-updated-site-articles-case
https://miyabix.com/wp/saved-but-not-updated-site-articles-case

キャッシュが原因の事例は多いです。
丁寧にやっつけましょう。

ポイント

  • WordPressのバージョン
  • テーマのバージョン
  • プラグインのバージョン

また、それぞれのバージョンが古いとエラーの原因になることもあります。

注意

当然ですが、要件が済んだら『.htaccess』からコードを確実に削除しましょう。
忘れると、自分しか観れないサイトになってしまいますからね。

サイバー攻撃『F5アタック』

今回の『503エラー』の原因は、まさかのサイバー攻撃でした。ちなみにエラーが出た場合、サーバー機能の『デバッグ』で確認すると解決が早いです。『だったら冒頭に書け』と叱られそうですが、前項までの意味を知らなければ再びドハマりすることは確実なので、あえて最後に持って来ました。

ちなみに、よく分からないのが『.htaccess』による自分以外のアクセス拒否が効かなかったことです。
まだまだ、勉強不足ですね。

さて、解決策を進めます。

エックスサーバーで説明しますが、どこのサーバーでもデバックの吐き出し機能はあるはずです。
『サーバーパネル』⇒『アクセス解析』⇒『エラーログ』へ入ります。

任意のドメインを選択し『ダウンロード』します。
するとテキスト形式で、エラーログ一覧が見られます。

この時のエラーログは、1500行を超えていました。
上記でお分かりの通り、連続して同じIPアドレスからアクセスがあります。

どうしても読みたいサイトに繋がらない時、何度かリロードすることはありますが、連続して何百回もアクセスすることはまずありません。これは自動でクリックさせるソフトを使った、犯罪行為です。キーボードの『F5』キーはリロードなので『F5アタック』と呼ばれています。

『サーバーパネル』⇒『ホームページ』⇒『アクセス拒否設定』へ入ります。

『拒否IPアドレス』欄に、連続アクセスのあったIPアドレスをコピペで入れます。
今回は、あやしいアクセスが複数件あったので、全て登録しました。

すると、あら不思議。
何も無かったかのように、自分のサイトにアクセス出来ました。

-WordPress

© 2020 MiyabiyMo Studio