WordPressで恐ろしい「内部サーバーエラー」を修正する(2021)
- Colin Newcomer
- 最終更新日:月26, 2021
私たちは皆そこにいました—ほんの数秒前に完全にうまく機能していたサイトが突然フィットを投げ、内部サーバーエラーを吐き出 運が良ければ、WordPressの管理者はまだ機能しますが、場合によっては協力を拒否することもあります。 この記事では、内部サーバーエラーとは何か、さらに重要なことに、それを修正する方法について説明します。
重要:変更を加える前に、常にサイトの完全なバックアップを作成してください(たとえそれが本来のように機能していなくても)—申し訳ありませんよ
クラッキングを取得してみましょう。
内部サーバーエラーとは何ですか?
内部サーバーエラーは、問題の根本に関する情報を提供していないため、ユーザーや開発者にとっても迷惑です。 あなたが医者に行って、あなたが痛みを感じたと言ったが、その痛みがどこにあるのかを明らかにすることを拒否したとしたら、医者がそれを治療す それは内部サーバーエラーの難しさです—問題がどこから来ているのかを示すものはありません。
(クリックして拡大)
さらに、”内部サーバーエラー”という名前は、ほとんどすべての場合、あなたのホスト(および/またはサーバー)に責任がないため、誤解を招く可能性があ HTTP仕様を見ると、内部サーバーエラーは次のことを意味することがわかります:
サーバーは、要求を満たすことができない予期しない状態に遭遇しました。
サーバー自体には何も問題はありません—それは単にそれが理解できない何かに遭遇しました。
何が起こっているのかを把握するには、少しのトラブルシューティングと試行錯誤を行う必要があります。 うまくいかない可能性のあることを体系的に調べることで、問題の原因を把握し、さらに重要なことに、問題を修正する方法を理解することができま
WordPress500内部サーバーエラーを修正する方法
これらの手順を順番に実行することをお勧めします。 つまり、ステップ#1で開始し、リストを通してあなたの方法を動作します。 いくつかの状況では、いずれかの手順の結果に基づいて先にスキップするように指示します。 しかし、一般的には、上から下に行く!
それ以外にも、このリストに変更を加える前にサイトをバックアップすることを常にお勧めします。 WordPressダッシュボードにアクセスしてバックアッププラグインを使用できない場合でも、ホスティングダッシュボードからバックアップを作成できるはずです。方法がわからない場合は、ホストのサポートに助けを求めてください。
デバッグを有効にする
最初のステップは、少なくともエラーの意味を理解しようとする必要があります—あなたは幸運になる可能性があります! サーバーがエラーをどのように処理するかによっては、実際にはサーバーエラーではないかもしれません。 代わりに、サイトのコード(通常はプラグインまたはテーマのコード)のエラーである可能性があります。
これが当てはまるかどうかを確認するには、webサイトのルートディレクトリにあるwp-config.php
ファイルを編集する必要があります:
- ファイルをダウンロードします(FTP経由)。
- それを開きます(テキストエディタを使用して)。
-
WP_DEBUG
を検索します。
行がすでに存在する場合は、false
をtrue
に変更し、ファイルをサーバーに再アップロードします。
この行が設定ファイルにない場合は、次の行の上に次のコード行を追加して作成します/* That's all, stop editing! Happy blogging. */
:
define( "WP_DEBUG", true );
あなたのウェブサイトをリロードし、エラーが変更されたかどうかを確認します。 そうで、特定のファイル内の特定のコード行を指す「致命的なエラー」メッセージが表示された場合は、比較的単純なコードエラーを見ています。 上記のエラーがプラグインやテーマに由来すると仮定すると、問題のある製品を無効にするか、問題を自分で修正する必要があります(または、自分で何が
注:この手順を完了したら、WP_DEBUG
の値をfalse
に戻して、誤ってデバッグモードを有効にしたままにしないようにしてください。 デフォルトでは、サイト全体にデバッグメッセージが表示され、訪問者や潜在的なセキュリティリスクを混乱させます。
WordPressダッシュボードが動作するかどうかを確認する
次のステップは、バックエンドWordPressダッシュボードにアクセスできるかどうかをテストすることです。
http://yoursite.com/wp-admin/
であなたのウェブサイトの管理者を訪問してください。 このページが正しく読み込まれ、ログインできる場合は、問題がプラグインまたはテーマであることを合理的に確認できます。 管理者がロードされた場合は、ステップ2に進みます。 そうでない場合は、ステップ4に進みます。
すべてのプラグインを無効にする
次に、問題がプラグインから来ているかどうかをテストします。 プラグインが無効になっている場合に問題を引き起こす方法はほとんどないので、これをテストする最も簡単な方法は、すべてのプラグインを一度に無効にすることです。 これはあなたのプラグインを削除することも、あなたのデータを失うこともありません(それはまだあなたのデータベースに安全に保存されています)。 それがすることは、プラグインのコードが内部サーバーエラーを引き起こしている場合に問題を解決するコードの実行を無効にすることです。
WordPressダッシュボードが正常に動作している場合は、次の手順に従ってプラグインを無効にすることができます:
- WordPressダッシュボードのプラグイン領域に移動します。
- すべてのプラグインを選択するには、チェックボックスを使用します。
- 一括操作ドロップダウンを使用して、それらを無効にします。
- 適用をクリックします。
何らかの理由でダッシュボード経由でプラグインを無効にできない場合は、次の手順に従:
- FTP経由でWordPressサイトのサーバーに接続します。
-
wp-content
フォルダに移動します。 -
plugins
フォルダの名前をplugins-deactivated
に変更します。
すべてのプラグインを無効にしてもサイトが読み込まれない場合は、ステップ3に進みます。
あなたのサイトが稼働している場合、次のステップは、どの特定のプラグインが問題を引き起こしているかを把握することです。
これを行うには、プラグインを一つずつ再アクティブ化する必要があります。 各プラグインを有効にした後、その内部サーバーエラーを確認し続けます。 あなたが犯人を見つけたら、あなたはそれをどうするかを決めることができます。 アクションの最良のコースは、無効にプラグインを維持し、すぐに著者に通知することです。 それはミッションクリティカルなプラグインの場合は、おそらくより良い、より安定した代替を探す必要があります。
注:FTP経由でプラグインを無効にした場合は、プラグインの再アクティブ化を開始する前に、元のplugins
名前に戻す必要があります。
非常にまれなケースでは、PHP5.3などの古いソフトウェアを実行すると問題が発生する可能性があります。 これまでに信頼できることが証明されているプラグインを交換する前に、ステップセブンを見てみましょう。
デフォルトのテーマに切り替える
プラグインを無効にしても問題が解決しない場合は、テーマも原因になる可能性があります。 これを確認するには、デフォルトのWordPressテーマに切り替えます。 私たちは、最新のデフォルトのテーマであるTwenty Twentyを使用することをお勧めします。
WordPressダッシュボードからテーマを管理できる場合は、Appearance->Themesに移動してこれを行うことができます。 既定のテーマを既に削除している場合は、次の場所から再インストールできますWordPress.org.
WordPressのダッシュボードからテーマを切り替えることができない場合は、次の手順に従ってFTP経由でこれを実行することもできます:
- FTP経由でWordPressサイトのサーバーに接続します。
-
wp-content/themes
フォルダに移動します。 - Twenty Twentyテーマがインストールされていない場合は、ダウンロードしたテーマフォルダをアップロードしてインストールできますWordPress.org (フォルダをアップロードする前に、必ずZIPファイルを抽出してください)。
- 現在のテーマのフォルダの名前を
-deactivated
に変更します。
アクティブなテーマのフォルダの名前を変更すると、WordPressは自動的にデフォルトのテーマにフォールバックします(デフォルトのテーマがインストールされている
Twenty Twentyに切り替えると問題が解決する場合は、すべてのプラグインを再度有効にして、テーマのコードで問題を見つけることができます。
あなたのテーマが公式のテーマリポジトリまたは独立したテーマショップのいずれかからのものである場合は、できるだけ早く著者に知らせてください。 一方、それがあなた自身のテーマである場合は、これらのバグを見つけるのが非常に難しいことが多いため、開発者に手伝ってもらう必要があります。
非常にまれなケースでは、PHP5.3などの古いソフトウェアを実行すると問題が発生する可能性があります。 バグを見つけようとする時間を費やしたり、開発者に数百ドルを支払う前に、ステップセブンを見てみましょう。
メモリ制限を増やす
あなたのウェブサイトがあまりにも多くのメモリを使用している場合、それは間違いなくフィットをスローします—500内部サーバーエラーが発生する可能性があります。 多くの場合、これはひどくコード化されたテーマやプラグインの兆候です。 メモリ制限を増やすことで迅速に解決できますが、これは問題を解決する確実な方法ではなく、その根本に到達しません。
手動でメモリ制限を増やすことができます。 ただし、サーバーまたはアカウントには一定量のメモリが割り当てられている可能性があり、それを超えてメモリ制限を増やすことはできません。
制限を増やす方法はいくつかあります:
-
wp-config.php
ファイル -
PHP.ini
ファイル(アクセス権がある場合—あなたはできないかもしれません) -
.htaccess
ファイル
これらのすべてのファイルについては、FTP経由でサーバーに接続し、コードスニペットを追加する(またはスニペットが既に存在する場合は既存のコードスニペットの値を変更する)ことで編集する必要があります。 何を追加するかは次のとおりです:
phpファイル
次のコードスニペットを次の行の上に追加します/* That's all, stop editing! Happy blogging. */
:
define('WP_MEMORY_LIMIT', '256M');
PHP。ini
memory_limit = M
という行を見つけて、番号を256
に変更します。 たとえば、memory_limit = 256M
です。
.htaccessファイル
次の行を追加します:
php_value memory_limit 256M
また、より具体的な指示のためにあなたのホストに話す—いくつかはあなたの部分にほとんど大騒ぎであなたのメモリ制限を増やすことが幸せよりも
htaccessの問題
あなたのホストがApacheサーバーを使用している場合(ほとんどのWordPressホストが、特に予算側で行う)、.htaccess
ファイルは比較的高度な機能を可能にする設定ファ これを使用すると、gzip圧縮を有効にし、最大アップロードサイズを変更し、リダイレクトを設定し、他のあらゆる種類の便利なことを行うことができま WordPressはまた、他の機能の中で、あなたのサイトのパーマリンクを管理するために、このファイルを使用しています。
私たちはすでに編集する方法についてのガイドを書いています。htaccessファイルですが、これは注意が必要な敏感な領域であることを繰り返す価値があります。 たとえば、タイプミス、忘れられたスペース、または閉じられていない引用は、500内部サーバーエラーを簡単に引き起こし、管理者を含むウェブサイトを停止させ
このファイルにエラーがあるかどうかを確認する簡単な方法があります:
- FTP経由でサーバーに接続し、ルートフォルダにある
.htaccess
ファイルを見つけます。 - 既存のファイルをコンピュータにダウンロードしてバックアップします。
- 元のファイルをバックアップしたら、サーバー上にある
.htaccess
のコピーを削除します。
あなたのウェブサイトがオンラインに戻った場合、問題はあなたの.htaccess
ファイルにあります。 カスタム.htaccess
ルール(カスタムリダイレクトなど)がない場合は、設定->パーマリンクに移動して保存をクリックすることで、WordPressに新しい.htaccess
ファイルを生成させることができます(設定を変更する必要はありません—既存の設定で保存ボタンをクリックするだけです)。
カスタムルールがある場合は、.htaccess
ファイルを1行ずつ調べて、サイトがいつダウンしたかを確認できます。 問題のある行を見つけたら、不要なテキスト(おそらく閉じられていない引用符など)がないことを確認してください。 問題が見つからない場合は、おそらく行を削除するだけです。 あなたのウェブサイトが完全にダウンしていることは、欠落している.htaccess
行よりもはるかに悪いです—あなたがより多くの助けが必要な場合は、フォーラ
時間を節約するために、これも無料で使用できます。自動的に多くの低レベルのエラー/タイプミスをキャッチすることができますhtaccess構文チェッカー、。
WordPressを再インストールする
非常にまれですが、WordPressコアにいくつかのファイルが破損している可能性があります。 これは心配することではありません—あなたのサーバーが必要なファイルをコピーしていたときに何かが間違っている可能性があります。 WordPressのコアファイルを再アップロードすると、問題が解決する可能性があります。
コアWordPressファイルを再インストールする方法は次のとおりです:
- からWordPressの新しいコピーをダウンロードWordPress.org.
- ZIPファイルを抽出します。
-
wp-content
フォルダとwp-config-sample.php
ファイルを削除します。 また、wp-config.php
ファイルがないことを確認してください(存在する場合は削除してください)。 このファイルはそこにあるべきではありませんが、再確認するのは常に良いことです! - FTP経由でサーバーに接続します。
- 残りのファイルとフォルダをルートフォルダにアップロードします。
- FTPプログラムのプロンプトが表示されたら、すべてのファイルを上書きするように指示します。
PHPバージョンの問題を確認する
古いPHPバージョンは通常、内部サーバーエラーを引き起こさないが、貴重な時間とお金を費やす前に、ホストと話して新しいバージョンを提供するように頼む価値があるかもしれない。 たとえば、プラグインが古いバージョンのPHPでは使用できない関数を使用する場合があります。
実行しているPHPのバージョンをホストに尋ねます。 2020年9月現在、PHP5.6は更新を受信しなくなりました(基本的なセキュリティサポートもありません)—ホストがそのような古いバージョンでサイトを実行している場合は、それを受け入れません。 あなたは少なくともPHP7のいくつかの変種を実行している必要があります。 理想的には、PHP7.0も更新を受信しなくなり、PHP7.2でも2020年末にセキュリティ修正の受信を停止するため、PHP7.3以降を使用することをお勧めします。
何も動作していませんか? 複合問題のテスト
一度に二つの問題が発生する可能性は低いですが、それが起こる可能性があります。 問題の原因となっているプラグインや.htaccess
の問題がある可能性があります。 この場合、すべてのプラグインを無効にしても問題は解決されず、.htaccess
ファイルを削除しても解決されません。
これらの手順を実行しても500内部サーバーエラーが発生する場合は、再度起動し、変更を元に戻さないようにしてください。 プラグインを無効にしておき、テーマをTwenty Twentyに切り替えたままにしておきます。
試行錯誤することで、問題の原因となっている問題の組み合わせを発見することができます。
Managed WordPress Hostingを試してみてください
ご覧のように、500internal server errorなどの一般的なWordPressエラーのトラブルシューティングには多くの作業が含まれています。 これらの問題に自分で対処する必要がない場合(利便性のためにもう少し支払うことを喜んでいる場合)、サイトを管理されたWordPressホスティングに移
高品質のマネージドWordPressホストは、これらのタイプのエラーを積極的に監視し、サイトを動作させ続けるためにそれらを修正します。 たとえば、推奨されているマネージドWordPressホストの1つであるKinstaのサポートスタッフは、内部サーバーエラーのためにサイトがダウンした場合、自動的に通知を受 さらに、これらのホストはより多くのプレミアム製品を提供しているため、サポートスタッフは問題のトラブルシューティングに時間を割いて喜んで
もちろん、欠点は、あなたが間違いなくあなたが安い共有ホスティングの場合よりも少し多くを支払うことになるということです。 通常、品質管理されたWordPressホストは、月に約30ドルから始まります。 それでも、あなたが心の平和を大切にするならば、その価格は、特にダウンタイムが収入を失ったことを意味するビジネスウェブサイトのために、そ
最終的な考え
内部サーバーのエラーメッセージがあいまいであるため、解決するのは難しいかもしれませんが、上記の手順に従うことで、最終的に何が
それでも問題を解決できない場合は、ホストに連絡してください。 この記事にリンクし、彼らは努力を感謝し、問題をはるかに速く見つけることができるようになりますように、あなたはこれらの手順を試してみまし
このエラーに関連して起こっているエッジケースや実に奇妙なことを見ましたか? 私たちはコメントで知ってみましょう!