WordPressの502BadGatewayエラーを修正する方法

公開: 2020-05-09

ウェブサイトを運営する上で最も苛立たしい側面の1つは、エラーが発生している理由がわからない場合にエラーのトラブルシューティングを行う必要があることです。 502の不正なゲートウェイエラーなど、いくつかの問題には多くの潜在的な原因があります。 これは、正しい解決策にたどり着く前に、複数の解決策を試す必要があるかもしれないことを意味します。 この投稿では、このトリッキーなエラーをナビゲートして解決する方法を紹介します。

仕事に取り掛かろう!

私たちのYoutubeチャンネルを購読する

502 Bad Gatewayエラーとは何ですか(そしてなぜそれが起こるのか)

動作中の502不良ゲートウェイエラー。

502の不正なゲートウェイエラーがときどきポップアップし、多くの場合、サーバーに問題があることを意味します。

Webサイトにアクセスすると、ブラウザーはそのサイトをホストするサーバーに1つ以上の要求を送信します。 すべてが正常に機能している場合、そのサーバーはブラウザが要求した情報を送り返し、Webサイトが読み込まれます。 一方、502の不正なゲートウェイエラーは、サーバーが「無効な」応答を送り返すときに発生します。 これは、接続がタイムアウトしたことを意味する場合もあれば、他のいくつかの問題の結果である場合もあります。

Mozilla Developer Networkによると、正式な定義は次のとおりです。

ハイパーテキスト転送プロトコル(HTTP)502 Bad Gatewayサーバーのエラー応答コードは、サーバーがゲートウェイまたはプロキシとして機能しているときに、アップストリームサーバーから無効な応答を受信したことを示しています。

これまでのところ、これは単純に聞こえるかもしれません。 ただし、ブラウザとほとんどのWebサイト間の接続は、以前ほど簡単ではありません。 たとえば、ブラウザのリクエストは、問題のホストに送信される前にプロキシサーバーを経由してルーティングされる可能性があるため、問題の場所を特定するのが難しい場合があります。 多くのWebサイトも複数のサーバーを使用しており、それらのいずれかが502エラーの原因となる可能性があるため、事態はさらに複雑になります。

これはすべて、この特定のエラーコードにはいくつかの潜在的な原因があることを意味します。 次の結果である可能性があります。

  • データベースのエラー。
  • タイムアウトした、現在使用できない、または意図したとおりに機能していないサーバー。
  • サーバーは、要求が多すぎるために過負荷になっています。 おそらく、DDOS攻撃、またはトラフィックの意図したよりも大きなスパイクですらあります。
  • リバースプロキシサーバーに問題があります。
  • プラグインまたはテーマの1つが原因で、PHPスクリプトに欠陥があります。

幸いなことに、問題がサーバー側にある場合は、何もする必要がない可能性があります。 このような場合、ホスティングプロバイダーは通常、すぐに救助に飛びつきます(クライアントはダウンタイムを認識しない傾向があるため)。 サイトが502エラーの影響を受けているという通知を受け取ったら、できるだけ早くホストのサポートチームに連絡する必要があります。

そのことを念頭に置いて、502の不良ゲートウェイエラーがすぐに解消されない場合の対処方法に焦点を当てます。 結局のところ、ほとんどのWebサイトは一度に何時間もダウンする余裕がないため、このエラーが続く場合は、ユーザー側でトラブルシューティングを開始する必要があります。

502 BadGatewayエラーを修正する方法

トラブルシューティングモードに移行する前に、サーバーが正常に応答しているかどうかを判断するために実行できる簡単なテストが1つあります。 tracerouteを実行して、サーバーが最初に到達可能かどうかを確認できます。 もしそうなら、問題はおそらくあなたの側にあります。 そうでない場合、これはあなたがあなたのホスティングプロバイダーと連絡を取りたいかもしれないときです。

また、ルーターをリセットし、ドメインネームシステム(DNS)の設定を確認してみてください。 これらは、502エラーがなくなることがある基本的な修正であり、自分で取り組むのに十分簡単です。 ただし、どちらの解決策でも問題が解決しない場合は、次の方法を使用して502エラーのトラブルシューティングを行うことができます。

ブラウザのキャッシュをクリアする

根本的な問題が解決されている場合でも、Webサイトにアクセスしようとすると、502エラーが表示されることがあります。 これは、ブラウザがサーバーからサイトの最新バージョンをロードするのではなく、キャッシュに依存している場合に発生します。

多くの場合、サイトを数回リロードするだけでうまくいくことがあります。 特に、Windowsの場合はShift-CTRL-R、Macの場合はShift-CMD-Rを使用して強制リロードを使用している場合。

上記のすべてが失敗した場合は、ブラウザのキャッシュを手動で空にする必要があります。 Chromeユーザーは、 [設定]> [詳細設定]メニューに移動し、 [閲覧履歴データ消去]オプションを見つけることでこれを行うことができます。

ブラウザのキャッシュをクリアします。

[基本]タブで[キャッシュされた画像とファイル]オプションを探し、選択したら[データ消去]をクリックします。 [データ消去]ボタンをクリックする前にその設定を無効にしないと、このメニューによって閲覧履歴も削除されることに注意してください。

これと同じプロセスは、Firefox、Safari、Internet Explorer、およびその他のほぼすべてのブラウザを使用して実行することもできます。 キャッシュをクリアしたら、もう一度Webサイトをリロードしてみてください。 エラーが続く場合は、深刻になる時期です。 キャッシュのクリアの詳細については、トピックに関するHubspotのハブページを参照してください。

コンテンツ配信ネットワーク(CDN)を一時的に無効にする

先ほど、ブラウザのリクエストがリバースプロキシサーバーを介してルーティングされる場合があることを説明しました。 つまり、プロキシサーバーを使用すると、ユーザーのブラウザとWebサイトのサーバーの間に仲介が配置されます。

コンテンツ配信ネットワーク(CDN)などの一部のサービスは、リバースプロキシテクノロジーに依存して、着信トラフィックを可能な限り効率的にルーティングします。 ただし、Webサイトのオリジンサーバーに接続しようとすると、この余分なレイヤーによって問題が発生する場合があります。 それが起こるとき、あなたの訪問者(そしてあなた)は恐ろしい502の悪いゲートウェイエラーに出くわすかもしれません。

幸い、CDNがこの問題の原因であるかどうかを確認するのは簡単です。 あなたがしなければならないのは、一時的にサービスを無効にしてから、あなたのウェブサイトがそれなしで正しくロードされるかどうかをテストすることです。 CDNを無効にするプロセスは、使用しているサービスによって異なりますが、通常は簡単です。

たとえば、Cloudflareユーザーはダッシュボードの[概要]タブに移動するだけです。 内部には、サービスを実行しているプロパティのリストがあります。 次に、[ウェブサイトの一時停止]セクションで大きな[一時停止]ボタンを探してクリックする必要があります。

CDNサービスを一時停止します。

これで、Webサイトにアクセスしようとすると、そのオリジンサーバーが仲介者の邪魔をすることなく要求に応答します。 502エラーがなくなった場合は、CDNが問題の原因である可能性があります。 ほとんどの場合、サービスを再度有効にする前に、数時間待つ必要があります。 もちろん、その後もエラーが解消されていることを確認してください。

別のCDNを使用している場合は、サービスを一時的に無効にする方法について、そのドキュメントを参照する必要があります。 ただし、CDNに問題がないことが判明した場合は、もう1つ試すことができる修正があります。

WordPressのテーマとプラグインをテストする

これまで、502エラーの背後にある3つの潜在的な原因について説明してきました。サーバー、ブラウザー、およびCDNなどの仲介サービスです。 問題があなたの側にあると確信しているなら、それはただ一つの選択肢を残します、そしてそれはあなたのウェブサイトです。 特にWordPressを実行している場合、プラグインまたはテーマの1つが、サーバーが正しくロードできないスクリプトを実行しようとしている可能性があります。 これにより、ブラウザがリクエストを送信したときに無効な応答が発生し、502エラーがトリガーされる可能性があります。

一度にアクティブなテーマは1つだけなので、現在のテーマを非アクティブ化し、一時的にデフォルトのWordPressテーマに切り替えて、エラーが解決するかどうかを確認できます。 一方、プラグインが問題を引き起こしているかどうかを判断するには、現在アクティブなプラグインの数によっては、さらに時間がかかる場合があります。

エラーのため、現時点ではダッシュボードにアクセスできないため、プラグインとテーマを手動で無効にする必要があります。 このプロセスにはプラグインとテーマの削除は含まれず、それらを再アクティブ化するのにかかる時間はわずかであることに注意してください。 したがって、Webサイトの機能に影響を与えることはありません。 それでも、万が一の場合に備えて、最近のバックアップを用意しておく必要があります。

次に、選択したFTPクライアントを開きます。 私たちはFileZillaの大ファンなので、これを例として使用します。 FTP経由でWebサイトにログインし、 public_html – wp-content –pluginsフォルダーに移動します。 インストールされているプラ​​グインごとにフォルダーがあります。アクティブでないプラグインも含まれます。

WordPressプラグインディレクトリ。

これらのフォルダのいずれかを右クリックすると、[名前の変更]というラベルの付いたものを含むいくつかのオプションが表示されます。 今すぐそれをクリックして、フォルダの名前をdisabled.pluginnameのようなものに変更します

無効にされたWordPressプラグイン。

今すぐウェブサイトにアクセスすると、WordPressはそのプラグインを見つけることができないため、プラグインがないと読み込まれます。 非アクティブ化したプラグインが502エラーの原因であった場合は、Webサイトが正しく読み込まれるはずです。 念のため、サイトをリロードする前に、CTRL + F5コマンド(または同等のOS X)を使用して、ブラウザにキャッシュを強制的に削除することを忘れないでください。

混乱を避けるために、一度に1つのプラグインのトラブルシューティングを行う必要があります。 フォルダの名前を変更し、Webサイトをリロードしてみて、それでも502エラーが表示されるかどうかを確認してください。 そうである場合は、フォルダの元の名前を復元します。 エラーの原因となっているフォルダーが見つかるまで、またはすべてのプラグインをテストするまで、各フォルダーでこのプロセスを繰り返します。 同じプロセスを使用してアクティブなテーマをテストできます。これにより、WordPressは代わりにデフォルトのテーマの1つを使用するようになります。

あなたのプラグインやテーマの一つは、502エラーの原因となっている場合、あなたはそれを完全に削除し、交換を探すことができます。 古い場合は、更新して問題が解決するかどうかを確認することもできます。 場合によっては、問題のあるスクリプトにすぐにパッチが適用されるため、後でいつでもそのプラグインまたはテーマの使用を再開できます。

その他のクイック(潜在的な)修正

さて、これらの上記の修正は、502エラーがサーバーではなくあなたの側の何かによって引き起こされている場合、原因を見つけて修正する可能性があります。 それが消えない場合は、Webホストに連絡して、サーバーをソートし、そこで問題があれば診断す​​ることをお勧めします。

とはいえ、いくつかの簡単なチェックを実行することで、プロセスをスピードアップするのに役立ちます。

これらのチェックの最初は、サイトが保存した可能性のあるログです。 WordPressの場合、それを表示する方法はいくつかあります。 これらのログを使用してサイトを改善することについては、ここで役立つ可能性のある確かな記事があります。 バージョン5.0以降を実行しているWPサイトには、管理ダッシュボード内で確認できるサイトヘルスツールが装備されているため、その内容を確認してください。

また、ブラウザのCookieがクリアされていることを確認することもできます。 これらはキャッシュから完全に分離されており、常にこれらをクリアしたいとは限りません。 ブラウザに保存されている情報を保持している場合、これにより情報が消去されます。 しかし、それらの同じCookieは、あなたとそれらのサイトの間の接続を502する可能性もあるため、Catch-22である可能性があります。 いずれにせよ、主要なブラウザでCookieをクリアするのは非常に簡単です。

サイトが停止した場合は、実行に時間がかかるだけのバックグラウンドに何かがある可能性があります。 関数.phpファイルを編集するだけで、WordPressサイトで許可されている実行時間を大幅に増やすことができます。 WPを使用していない場合は、 .htaccessまたはphp.iniを使用して行うこともできます。 Thimpressには、これをすべて行う方法についてのかなり良いガイドがあります。

最後に、DNSエラーを確認できます。 つまり、ホストを移動したか、別の種類のプランまたはサーバー自体に変更したことを意味します。 ネームサーバーや、うまくいかない可能性のあるものをいくつでも調整した可能性があります。 DNS設定は非常に具体的であり、設定ミスが発生しがちです。 したがって、cPanelまたはダッシュボードに移動し、ホストとドメインレジストラの間、およびWebサイト自体の設定の間にすべてが揃っていることを確認します。 ワイヤーが交差したり、1つのタイプミスでトラック内のすべてが停止したりすることがあります。 ここでは、少しのDNS校正が大いに役立ちます。

また、DNSに問題がないことを確認することに本当に関心がある場合は、ターミナルを起動してDNSキャッシュを手動でフラッシュできます。

結論

WordPressエラーのトラブルシューティングは、想像以上に簡単なことがよくあります。 502の不正なゲートウェイエラーなど、多くの潜在的な原因がある問題でさえ、十分に理解され、文書化されています。 うまくいくソリューションにたどり着く前に、複数のソリューションを試す必要があるかもしれませんが、正しい指示に従えば、トラブルシューティングプロセスはそれほど長くはかからないはずです。

Webサイトで502の不正なゲートウェイエラーが発生し、数分後(またはホストのサポートチームにすばやく電話した後)にエラーが消えない場合は、問題があなたの側にある可能性があります。 上記のプロセスとトリックを実行するだけで、あなたとあなたのユーザーはすぐにあなたのウェブサイトに戻るはずです。

あなたのウェブサイトの1つで502の悪いゲートウェイエラーに遭遇したことがありますか? 以下のコメントセクションであなたの経験を私たちと共有してください!

windwheel /shutterstock.comによる記事のサムネイル画像。