WordPressサイトで500内部サーバーエラーを修正する方法

公開: 2017-12-25

恐ろしい500内部サーバーエラー。 それは常に最も不適当な時期に来るようであり、あなたは突然あなたのWordPressサイトをオンラインに戻す方法を理解するためにスクランブリングを余儀なくされています。 私たちを信じてください、私たちは皆そこにいました。 あなたが見たかもしれないのと同じように振る舞う他のエラーには、データベース接続を確立する恐ろしいエラーと恐ろしい死の白い画面が含まれます。 しかし、サイトがダウンした瞬間から、訪問者と顧客を失っています。 言うまでもなく、それは単にあなたのブランドにとって悪いように見えます。

今日は、500の内部サーバーエラーについて詳しく説明し、サイトをすばやくオンラインに戻すためのいくつかの方法について説明します。 このエラーの原因と、今後エラーを防ぐためにできることについては、以下をお読みください。

  • 500内部サーバーエラーとは何ですか?
  • 500内部サーバーエラーを修正する方法

500内部サーバーエラーを修正するための究極のガイドをご覧ください

500内部サーバーエラーとは何ですか?

インターネット技術特別調査委員会(IETF)は、500内部サーバーエラーを次のように定義しています。

500(内部サーバーエラー)ステータスコードは、サーバーが要求を実行できない予期しない状態に遭遇したことを示します。

Webサイトにアクセスすると、ブラウザはサイトがホストされているサーバーにリクエストを送信します。 サーバーはこのリクエストを受け取り、処理し、リクエストされたリソース(PHP、HTML、CSSなど)をHTTPヘッダーとともに送り返します。 HTTPには、HTTPステータスコードと呼ばれるものも含まれています。 ステータスコードは、リクエストのステータスについて通知する方法です。 これは、「すべてがOK」を意味する200ステータスコード、または問題が発生したことを意味する500ステータスコードである可能性があります。

500のステータスエラーコードにはさまざまな種類があり(500、501、502、503、504など)、それらはすべて異なる意味を持っています。 この場合、500の内部サーバーエラーは、サーバーが要求を実行できない予期しない状態に遭遇したことを示します(RFC 7231、セクション6.6.1)。

WordPressの500内部サーバーエラー
WordPressの500内部サーバーエラー

500内部サーバーエラーのバリエーション

さまざまなWebサーバー、オペレーティングシステム、およびブラウザーが原因で、500内部サーバーエラーはさまざまな形で現れる可能性があります。 しかし、それらはすべて同じことを伝えています。 以下は、Web上で表示される可能性のあるさまざまなバリエーションのほんの一部です。

    • "500内部サーバーエラー"
    • 「HTTP500」
    • "内部サーバーエラー"
    • 「HTTP500–内部サーバーエラー」
    • 「500エラー」
    • 「HTTPエラー500」
    • "500内部サーバーエラー"
    • "500内部サーバーエラー。 何か問題が発生しました。」
    • 「500。 それはエラーです。 エラーが発生しました。 後でもう一度やり直してください。 私たちが知っているのはそれだけです。」
    • 「Webサイトはページを表示できません–HTTP500。」
    • 「現在、このリクエストを処理できません。 HTTPエラー500。」

また、次のメッセージが付随して表示される場合があります。

サーバーで内部エラーまたは構成ミスが発生し、リクエストを完了できませんでした。 サーバー管理者に連絡し、[メールで保護]して、エラーが発生した時刻と、エラーの原因となった可能性のあるすべてのことを通知してください。 このエラーの詳細については、サーバーエラーログを参照してください。

Internal Server Error
内部サーバーエラー

また、空白の白い画面が表示される場合もあります。 500の内部サーバーエラーを処理する場合、これはFirefoxやSafariなどのブラウザでは実際には非常に一般的です。

Firefoxの500内部サーバーエラー
Firefoxの500内部サーバーエラー

より大きなブランドは、Airbnbからのこのような、独自のカスタム500内部サーバーエラーメッセージを持っているかもしれません。

Airbnb500内部サーバーエラー
Airbnb500内部サーバーエラー

これは、readmeにいる人々からの別のクリエイティブ500サーバーエラーの例です。

readme 500 internal server error
readme500内部サーバーエラー

強力なYouTubeでさえ、500の内部サーバーエラーから安全ではありません。

YouTubeの500内部サーバーエラー
YouTubeの500内部サーバーエラー

IIS 7.0(Windows)以降のサーバーの場合、500エラーの原因をより詳細に示す追加のHTTPステータスコードがあります。

  • 500.0 –モジュールまたはISAPIエラーが発生しました。
  • 500.11 –アプリケーションがWebサーバーでシャットダウンしています。
  • 500.12 –アプリケーションはWebサーバーでの再起動でビジーです。
  • 500.13 –Webサーバーがビジーすぎます。
  • 500.15 –global.asaxへの直接リクエストは許可されていません。
  • 500.19 –構成データが無効です。
  • 500.21 –モジュールが認識されません。
  • 500.22 –ASP.NEThttpModules構成はマネージドパイプラインモードには適用されません。
  • 500.23 –ASP.NEThttpHandlers構成はマネージドパイプラインモードには適用されません。
  • 500.24 – ASP.NETの偽装構成は、マネージドパイプラインモードには適用されません。
  • 500.50 –RQ_BEGIN_REQUEST通知の処理中に書き換えエラーが発生しました。 構成エラーまたはインバウンドルール実行エラーが発生しました。
  • 500.51 –GL_PRE_BEGIN_REQUEST通知の処理中に書き換えエラーが発生しました。 グローバル設定またはグローバルルール実行エラーが発生しました。
  • 500.52 –RQ_SEND_RESPONSE通知の処理中に書き換えエラーが発生しました。 アウトバウンドルールの実行が発生しました。
  • 500.53 –RQ_RELEASE_REQUEST_STATE通知の処理中に書き換えエラーが発生しました。 アウトバウンドルール実行エラーが発生しました。 ルールは、出力ユーザーキャッシュが更新される前に実行されるように構成されています。
    500.100 –内部ASPエラー。

500エラーがSEOに影響を与える

WordPressのメンテナンスモードで使用され、後でもう一度確認するようにGoogleに指示する503エラーとは異なり、500エラーは、すぐに修正しないとSEOに悪影響を与える可能性があります。 サイトがたとえば10分間だけダウンしていて、それが一貫してクロールされている場合、クローラーは単にページをキャッシュから配信します。 または、Googleは、バックアップする前に再クロールする機会さえないかもしれません。 このシナリオでは、あなたは完全に元気です。

ただし、サイトが長期間、たとえば6時間以上ダウンしている場合、Googleは500エラーを対処する必要のあるサイトレベルの問題と見なす可能性があります。 これはランキングに影響を与える可能性があります。 500回のエラーが繰り返されることを心配している場合は、なぜそれらが最初から発生しているのかを理解する必要があります。 以下の解決策のいくつかが役立ちます。

500内部サーバーエラーを修正する方法

WordPressサイトで500内部サーバーエラーが発生した場合、どこからトラブルシューティングを開始する必要がありますか? どこから始めればいいのかわからないこともあります。 通常、500個のエラーはサーバー自体にありますが、私たちの経験から、これらのエラーは2つの原因で発生します。1つはユーザーエラー(クライアント側の問題)で、もう1つはサーバーに問題があることです。 それで、両方の少しに飛び込みます。

これらの一般的な原因と500内部サーバーエラーを修正し、すぐに復旧して実行する方法を確認してください。

1.ページをリロードしてみてください

これは少し明白に思えるかもしれませんが、500内部サーバーエラーが発生したときに最初に試すべき最も簡単なことの1つは、1分ほど待ってから、ページをリロードすることです(F5またはCtrl + F5)。 ホストまたはサーバーが単に過負荷になっていて、サイトがすぐに戻ってくる可能性があります。 待っている間に、別のブラウザをすばやく試して、問題として除外することもできます。

あなたができるもう一つのことは、ウェブサイトをdownforeveryoneorjustme.comに貼り付けることです。 このウェブサイトは、サイトがダウンしているかどうか、またはそれがあなたの側の問題であるかどうかを教えてくれます。 このようなツールは、サーバーから返されたHTTPステータスコードをチェックします。 200「すべてOK」以外の場合は、ダウン表示が返されます。

downforeveryoneorjustme
downforeveryoneorjustme

また、WordPressサイトでプラグインまたはテーマを更新した直後にこれが発生する場合があることにも気づきました。 通常、これは適切に設定されていないホスト上にあります。 何が起こるかというと、彼らは直後に一時的なタイムアウトを経験します。 ただし、通常は数秒で問題が解決するため、必要なのは更新だけです。

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

ブラウザのキャッシュをクリアすることは、サイトのより深いデバッグに飛び込む前に、常に別の優れたトラブルシューティング手順です。 以下は、さまざまなブラウザでキャッシュをクリアする方法の説明です。

  • すべてのブラウザの単一ページを強制的に更新する方法
  • GoogleChromeのブラウザキャッシュをクリアする方法
  • MozillaFirefoxのブラウザキャッシュをクリアする方法
  • Safariのブラウザキャッシュをクリアする方法
  • InternetExplorerのブラウザキャッシュをクリアする方法
  • MicrosoftEdgeのブラウザキャッシュをクリアする方法
  • Operaのブラウザキャッシュをクリアする方法

3.サーバーログを確認します

エラーログも利用する必要があります。 Kinstaクライアントの場合は、MyKinstaダッシュボードのログビューアでエラーを簡単に確認できます。 これは、特にサイトのプラグインが原因である場合に、問題をすばやく絞り込むのに役立ちます。

500の内部サーバーエラーのエラーログを確認します
500の内部サーバーエラーのエラーログを確認します

ホストにログツールがない場合は、wp-config.phpファイルに次のコードを追加してログを有効にすることでWordPressデバッグモードを有効にすることもできます。

 define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );

ログは通常、/wp-contentディレクトリにあります。 ここキンスタのような他の人は、「ログ」と呼ばれる専用のフォルダを持っているかもしれません。

WordPress error logs folder (SFTP)
WordPressエラーログフォルダー(SFTP)

また、ApacheとNginxのログファイルを確認することもできます。これらは一般的に次の場所にあります。

  • Apache: /var/log/apache2/error.log
  • Nginx: /var/log/nginx/error.log

Kinstaクライアントの場合は、分析ツールを利用して、500のエラーの総数の内訳を取得し、それらが発生する頻度と時期を確認することもできます。 これは、これが進行中の問題である場合、またはおそらくそれ自体で解決した問題である場合のトラブルシューティングに役立ちます。

応答分析500エラーの内訳
応答分析500エラーの内訳

強力な一元化されたMyKinstaダッシュボードのログビューアでエラーを簡単に特定して解決します。 Kinstaを無料でお試しください。

致命的なPHPエラーが原因で500エラーが表示されている場合は、PHPエラーレポートを有効にしてみることもできます。 エラーをスローするファイルに次のコードを追加するだけです。 通常、GoogleChromeDevToolsのコンソールタブでファイルを絞り込むことができます。

 ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);

また、php.iniファイルを次のように変更する必要がある場合もあります。

 display_errors = on

4.データベース接続の確立中にエラーが発生しました

500の内部サーバーエラーは、データベース接続エラーからも発生する可能性があります。 ブラウザによっては、異なるエラーが表示される場合があります。 ただし、どちらもサーバーログに関係なく500HTTPステータスコードを生成します。

以下は、「データベース接続の確立中にエラーが発生しました」というメッセージがブラウザにどのように表示されるかの例です。 接続が正しく機能していないため、ページをレンダリングするためのデータを取得できないため、ページ全体が空白になります。 これにより、サイトのフロントエンドが破損するだけでなく、WordPressダッシュボードにアクセスできなくなります。

Example of error establishing a database connection
データベース接続の確立エラーの例

では、なぜこれが正確に起こるのでしょうか? さて、ここにいくつかの一般的な理由があります。

  • 最も一般的な問題は、データベースのログイン資格情報が正しくないことです。 WordPressサイトは、個別のログイン情報を使用してMySQLデータベースに接続します。
  • WordPressデータベースが破損しています。 テーマ、プラグイン、およびユーザーがそれらを絶えず削除およびインストールする非常に多くの可動部分があるため、データベースが破損することがあります。 これは、テーブルが欠落しているか、個別に破損しているか、一部の情報が誤って削除されたことが原因である可能性があります。
  • WordPressのインストールに破損したファイルがある可能性があります。 これは、ハッカーが原因で発生することもあります。
  • データベースサーバーの問題。 トラフィックの急増によってデータベースが過負荷になったり、同時接続が多すぎて応答しなくなったりするなど、Webホスト側で多くの問題が発生する可能性があります。 共有ホストは同じサーバー上の多くのユーザーに同じリソースを使用しているため、これは実際には非常に一般的です。

WordPressでデータベース接続を確立する際のエラーを修正する方法についての詳細な投稿を確認してください。

5.プラグインとテーマを確認します

サードパーティのプラグインとテーマは、500の内部サーバーエラーを簡単に引き起こす可能性があります。 スライダープラグインからアドローテータープラグインまで、 Kinstaではすべてのタイプがそれらを引き起こすのを見てきました。 多くの場合、新しいものをインストールした後、または更新を実行した直後にエラーが表示されます。 これが、更新にステージング環境を利用するか、少なくとも更新を1つずつ実行することを常に推奨する理由の1つです。 そうしないと、500の内部サーバーエラーが発生した場合、突然、どちらが原因であるかを突き止めようとしています。

これをトラブルシューティングできるいくつかの方法は、すべてのプラグインを非アクティブ化することです。 プラグインを非アクティブ化するだけでデータが失われることはありません。 それでも管理者にアクセスできる場合、これを行う簡単な方法は、「プラグイン」を参照し、一括アクションメニューから「非アクティブ化」を選択することです。 これにより、すべてのプラグインが無効になります。

すべてのプラグインを非アクティブ化する
すべてのプラグインを非アクティブ化する

これで問題が解決した場合は、原因を見つける必要があります。 それらを1つずつアクティブ化し、アクティブ化するたびにサイトをリロードします。 500内部サーバーエラーが返されるのを見ると、プラグインの動作に問題があることがわかります。 その後、プラグイン開発者に連絡してヘルプを求めたり、WordPressリポジトリにサポートチケットを投稿したりできます。

WordPress管理者にログインできない場合は、サーバーにFTPで接続し、pluginsフォルダーの名前をplugins_oldなどに変更できます。 その後、サイトをもう一度確認してください。 それが機能する場合は、各プラグインを1つずつテストする必要があります。 プラグインフォルダの名前を「plugins」に戻し、if内の各プラグインフォルダの名前を、見つかるまで1つずつ変更します。 最初にステージングサイトでこれを複製することもできます。

Rename plugin folder
プラグインフォルダの名前を変更します

プラグイン、テーマ、WordPressコアが最新であることを常に確認してください。 また、サポートされているバージョンのPHPを実行していることを確認してください。 プラグインの不正なコードとの競合であることが判明した場合は、問題を修正するためにWordPress開発者を連れてくる必要があるかもしれません。

6.WordPressCoreを再インストールします

特に古いサイトでは、WordPressのコアファイルが破損することがあります。 プラグインやテーマに影響を与えることなく、WordPressのコアだけを再アップロードするのは実際には非常に簡単です。 WordPressを再インストールするための5つの異なる方法を含む詳細なガイドがあります。 そしてもちろん、先に進む前に必ずバックアップを取ってください。 以下のセクションの1つにスキップしてください。

  • 既存のコンテンツを保持しながらWordPressダッシュボードからWordPressを再インストールする方法
  • 既存のコンテンツを保持しながらFTP経由でWordPressを手動で再インストールする方法
  • 既存のコンテンツを保持しながら、WP-CLIを介してWordPressを手動で再インストールする方法

7.権限エラー

サーバー上のファイルまたはフォルダーでのアクセス許可エラーも、500内部サーバーエラーを引き起こす可能性があります。 WordPressのファイルとフォルダーのアクセス許可に関する一般的な推奨事項は次のとおりです。

  • すべてのファイルは644(-rw-r–r–)または640である必要があります。
  • すべてのディレクトリは755(drwxr-xr-x)または750である必要があります。
  • ディレクトリをアップロードする場合でも、ディレクトリに777を指定しないでください。
  • 強化:wp-config.phpを440または400に設定して、サーバー上の他のユーザーが読み取れないようにすることもできます。

より詳細な説明については、ファイル権限の変更に関するWordPressCodexの記事を参照してください。

FTPクライアントを使用してファイルのアクセス許可を簡単に確認できます(以下を参照)。 また、WordPressホストサポートチームに連絡して、フォルダーとファイルに対するGREPファイルのアクセス許可をすばやく取得して、正しくセットアップされていることを確認するように依頼することもできます。

ファイルパーミッションSFTP
ファイルパーミッションSFTP

8.PHPのメモリ制限

サーバーのPHPメモリ制限を使い果たした場合にも、500の内部サーバーエラーが発生する可能性があります。 制限を増やしてみてください。 cPanel、Apache、php.iniファイル、およびwp-config.phpファイルでこの制限を変更する方法については、以下の手順に従ってください。

cPanelのPHPメモリ制限を増やす

cPanelを使用するホストで実行している場合は、UIから簡単に変更できます。 [ソフトウェア]で[PHPバージョンの選択]をクリックします。

PHPバージョンを選択
PHPバージョンを選択

「PHPオプションに切り替える」をクリックします。

PHPオプションに切り替える
PHPオプションに切り替える

次に、 memory_limit属性をクリックして、その値を変更できます。 次に、「保存」をクリックします。

cPanelでPHPのメモリ制限を増やす
cPanelでPHPのメモリ制限を増やす

ApacheでPHPのメモリ制限を増やす

.htaccessファイルは、ディレクトリ固有のレベルに至るまで、サーバーの動作を変更するために使用できるさまざまな設定を含む特別な隠しファイルです。 最初にFTPまたはSSH経由でサイトにログインし、ルートディレクトリを調べて、そこに.htaccessファイルがあるかどうかを確認します。

.htaccess file
.htaccessファイル

ある場合は、そのファイルを編集して、PHPのメモリ制限を増やすために必要なコードを追加できます。 ほとんどの場合、64M以下に設定されているため、この値を増やしてみることができます。

 php_value memory_limit 128M

php.iniファイルのPHPメモリ制限を増やす

上記がうまくいかない場合は、 php.iniファイルを編集してみてください。 FTPまたはSSH経由でサイトにログインし、サイトのルートディレクトリに移動して、 php.iniファイルを開くか作成します。

php.ini file
php.iniファイル

ファイルがすでに存在する場合は、3つの設定を検索し、必要に応じて変更します。 ファイルを作成したばかりの場合、または設定が見つからない場合は、以下のコードを貼り付けることができます。 もちろん、ニーズに合わせて値を変更できます。

 memory_limit = 128M

一部の共有ホストでは、上記のphp.iniファイル設定を機能させるために、 .htaccessファイルにsuPHPディレクティブを追加する必要がある場合もあります。 これを行うには、同じくサイトのルートにある.htaccessファイルを編集し、ファイルの先頭に次のコードを追加します。

 <IfModule mod_suphp.c> suPHP_ConfigPath /home/yourusername/public_html </IfModule>

上記がうまくいかなかった場合は、ホストのグローバル設定がロックされており、代わりに.user.iniファイルを使用するように構成されている可能性があります。 .user.iniファイルを編集するには、FTPまたはSSH経由でサイトにログインし、サイトのルートディレクトリに移動して、 .user.iniファイルを開くか作成します。 次に、次のコードを貼り付けることができます。

 memory_limit = 128M

wp-config.phpでPHPのメモリ制限を増やす

最後のオプションは、私たちがファンであるオプションではありませんが、他のすべてが失敗した場合は、それを試してみることができます。 まず、FTPまたはSSHを介してサイトにログインし、通常はサイトのルートにあるwp-config.phpファイルを見つけます。

wp-config.php file
wp-config.phpファイル

wp-config.phpファイルの先頭に次のコードを追加します。

 define('WP_MEMORY_LIMIT', '128M');

また、メモリ制限の問題が発生していないかどうかをホストに確認することもできます。 ここKinstaではKinstaAPMツールやその他のトラブルシューティング方法を利用して、クライアントが制限を使い果たしている可能性のあるプラグイン、クエリ、またはスクリプトを絞り込むのを支援します。 独自のライセンスから独自のカスタムNewRelicキーを使用することもできます。

NewRelicを使用したデバッグ
NewRelicを使用したデバッグ

9..htaccessファイルの問題

KinstaはNginxのみを使用しますが、Apacheを実行しているWordPressホストを使用している場合は、 .htaccessファイルに問題があるか破損している可能性があります。 以下の手順に従って、新しいものを最初から再作成します。

まず、FTPまたはSSH経由でサイトにログインし、 .htaccessファイルの名前を.htaccess_oldに変更します。

.htaccessファイルの名前を変更します
.htaccessファイルの名前を変更します

通常、このファイルを再作成するには、WordPressでパーマリンクを再保存するだけです。 ただし、500の内部サーバーエラーが発生している場合は、WordPress管理者にアクセスできない可能性が高いため、これはオプションではありません。 したがって、新しい.htaccessファイルを作成し、次の内容を入力することができます。 次に、それをサーバーにアップロードします。

 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress

マルチサイトのデフォルトの.htaccessファイルなど、その他の例については、WordPressCodexを参照してください。

10. CGI/Perlスクリプトのコーディングまたは構文エラー

CGIとPerlのエラーによって引き起こされる500のエラーは、以前よりもはるかに一般的ではありません。 まだ言及する価値がありますが、特に、ワンクリックCGIスクリプトがまだ使用されているcPanelを使用している場合はそうです。 Stack OverflowのAEMが言うように:

CGIは、PHP、mod_perlなどのさまざまなApache拡張機能、Java EE、Struts、SpringなどのさまざまなフレーバーとフレームワークのJava、Django、Ruby on RailsなどのPythonベースのフレームワークなど、さまざまなWebプログラミングテクノロジーに置き換えられました。他のRubyフレームワーク、およびさまざまなMicrosoftテクノロジー。

CGIスクリプトを使用する際のヒントを次に示します。

  • 編集するときは、常にAtom、Sublime、Notepad++などのプレーンテキストエディタを使用してください。 これにより、ASCII形式のままになります。
  • chmod755の正しい権限がCGIスクリプトおよびディレクトリで使用されていることを確認してください。
  • CGIスクリプトをASCIIモード(FTPエディターで選択可能)でサーバーのcgi-binディレクトリにアップロードします。
  • スクリプトに必要なPerlモジュールがインストールされ、サポートされていることを確認してください。

強力な一元化されたMyKinstaダッシュボードのログビューアでエラーを簡単に特定して解決します。 Kinstaを無料でお試しください。

11.サーバーの問題(ホストに確認してください)

最後に、500の内部サーバーエラーは、PHPのタイムアウトまたはサードパーティのプラグインでの致命的なPHPエラーからも発生する可能性があるため、WordPressホストでいつでも確認できます。 これらのエラーは、専門家なしではトラブルシューティングが難しい場合があります。 これは、サーバー上で500のHTTPステータスコードをトリガーするいくつかのエラーの一般的な例であり、頭を悩ませる可能性があります。

 PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_error()...
 PHP message: PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in /www/folder/web/shared/content/plugins/plugin/functions.php:525

ここKinstaですべてのクライアントのサイトを監視し、これらのタイプのエラーが発生すると自動的に通知されます。 これにより、プロアクティブになり、問題の修正をすぐに開始できます。 また、サイトごとにLXD管理対象ホストとオーケストレーションされたLXCソフトウェアコンテナーを利用します。 これは、すべてのWordPressサイトが、それを実行するために必要なすべてのソフトウェアリソース(Linux、Nginx、PHP、MySQL)を備えた独自の分離されたコンテナーに収容されていることを意味します。 リソースは100%プライベートであり、他の人や自分のサイトと共有されることはありません。

PHPタイムアウトは、PHPワーカーの不足によっても発生する可能性がありますが、通常、これらは500エラーではなく504エラーを引き起こします。 これらは、サイトが特定の時間に処理できる同時リクエストの数を決定します。 簡単に言うと、Webサイトのキャッシュされていない各リクエストは、PHPワーカーによって処理されます。

PHPワーカーがすでにサイトで忙しいとき、彼らはキューを作り始めます。 PHPワーカーの制限に達すると、キューは古いリクエストをプッシュし始め、500エラーまたは不完全なリクエストが発生する可能性があります。 PHPワーカーに関する詳細な記事を読んでください。

あなたのサイトを監視する

将来、サイトで発生するこれらのタイプのエラーが心配な場合は、updown.ioなどのツールを使用して、発生した場合にすぐに監視して通知することもできます。 選択したURLにHTTPHEADリクエストを定期的に送信します。 あなたは単にあなたのホームページを使うことができます。 このツールを使用すると、次のチェック頻度を設定できます。

  • 15秒
  • 30秒
  • 1分
  • 2分
  • 5分
  • 10分

サイトがダウンした場合は、メールが送信されます。 以下に例を示します。

500エラーの電子メール通知
500エラーの電子メール通知

これは、障害のあるプラグインをデバッグしようとしている場合や、サーバーが過密になる傾向がある共有ホスト上にいる場合に特に役立ちます。 これにより、サイトが実際にダウンしている可能性がある頻度を証明できます(深夜でも)。 そのため、マネージドWordPressホストを使用することを常にお勧めします。 マネージドWordPressホスティングを選択する上位9つの理由を探る投稿を必ずチェックしてください。

概要

500の内部サーバーエラーは常に苛立たしいものですが、うまくいけば、サイトをすばやく復旧して実行するためにそれらをトラブルシューティングするためのいくつかの追加の方法を知っているはずです。 通常、これらのタイプのエラーは、サードパーティのプラグイン、致命的なPHPエラー、データベース接続の問題、.htaccessファイルまたはPHPのメモリ制限の問題、場合によってはPHPのタイムアウトが原因で発生することを忘れないでください。

見逃したことはありますか? おそらく、500の内部サーバーエラーのトラブルシューティングに関する別のヒントがあります。 もしそうなら、コメントで私たちに知らせてください。