「ヘッダー情報を変更できない–ヘッダーは既に送信されました」エラーを修正する方法
公開: 2021-11-26ほとんどのWordPressエラーメッセージは、サイトで問題を引き起こしている原因を示しています。 「警告:ヘッダー情報を変更できません–ヘッダーは既に送信されています」エラーも例外ではありません。 コードの問題が原因でPHPファイルを実行できない場合は、このメッセージが表示されます。
「ヘッダー情報を変更できません」エラーには、いくつかの原因が考えられます。 幸い、メッセージ自体が問題の原因となっているファイルを示しています。 問題を含むコード行も指し示します。
この記事では、このエラーとその原因について説明します。 次に、問題を解決するための2つの方法について説明します。 仕事に取り掛かりましょう!
「ヘッダー情報を変更できません–ヘッダーはすでに送信されています」エラーの原因
前述したように、サイトの.phpファイルの1つを実行できない場合、このエラーが発生します。 WordPressは、コア機能をwp-config.phpやfunctions.phpなどの.phpファイルに依存しています。
Webサイトをロードする必要のある.phpファイルの1つに問題がある場合は、次のようなエラーメッセージが表示されます。
Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/wp-config.php:#) in /home/public_html/wp-includes/file-example.php on line 33
幸い、「ヘッダー情報を変更できません」というエラーは、トラブルシューティングを比較的簡単にする多くの情報を提供します。 メッセージは2つのファイルを示します。最初のファイルには問題が含まれているため、2番目のファイルは実行できません。
エラーメッセージの最後に、「XX行目」というセクションが表示されます。 問題の原因となっている特定のコードの場所が表示されます。
通常、PHPコードの問題は非常に簡単に修正できます。 エラーメッセージをトリガーする可能性のある一般的な原因には、次のものがあります。
- コードの
<?php
セグメントの前、または終了?>
タグの後の空白 - PHPヘッダー関数の前のHTMLブロック
- PHPヘッダー関数の前に追加された
print
またはecho
ステートメント - プラグインのコードに関する問題
これらのタイプのエラーを修正するには、少なくともPHPコードの変更にある程度慣れている必要があります。 自分でコードを追加する必要はありません。
それでも、問題を特定するために少し追加の支援が必要になる場合があります。 これは、問題がPHPヘッダー関数の前の空白またはステートメントに関連していない場合に特に当てはまります。
「警告:ヘッダー情報を変更できません–ヘッダーは既に送信されています」エラーのトラブルシューティング方法(2つの方法)
「ヘッダー情報を変更できません–ヘッダーは既に送信されています」エラーのトラブルシューティングには2つの方法があります。 最初の方法では、WordPressダッシュボードを終了する必要はありません。
ただし、ダッシュボードにアクセスできない場合やWordPressを使用できない場合は、2番目の戦略でFTP/SFTPを使用します。
最初のトラブルシューティング方法から始めましょう。
1.プラグイン/テーマエディタでエラーを修正するか、プラグインを置き換えます
「ヘッダー情報を変更できません–ヘッダーは既に送信されています」というエラーが発生したときに最初に行う必要があるのは、問題の原因となっているファイルを開くことです。 次に、メッセージが示す行を見つけます。
たとえば、次のようなエラーが表示された場合は、テーマのfunctions.phpファイルの内部を調べる必要があることを意味します。
Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/wp-content/themes/twentytwentyone/functions.php:#) in /home/public_html/wp-includes/file-example.php on line 1
このシナリオでは、WordPressテーマエディターを使用して問題の原因に到達できます。 アクセスするには、[外観] >[テーマエディター]に移動します。
入ったら、右側のメニューを使用して、アクセスする必要のあるファイルを選択します。
よく見ると、 <?php
タグの前にいくつかの空白があります。 エラーメッセージ自体は、行番号1を指しています。 したがって、これは空白が問題の原因であることを示しています。
この例では、空白を削除して[ファイルの更新]をクリックするだけです。 今度はあなたのウェブサイトをリロードしてみてください、そしてエラーは消えるはずです。
WordPressプラグインエディター(プラグイン>プラグインエディター)を使用して同じプロセスを適用できます。 この方法は、エラーメッセージが欠陥のあるプラグインファイルを指している場合に適用できます。
または、WordPressプラグインディレクトリ内のファイルの1つを示すエラーが発生する場合があります。 このシナリオでは、そのプラグインを削除して再インストールできます。 ほとんどの場合、それで問題が解決します。
ただし、使用するツールによっては、プラグインの構成が失われる可能性があることに注意してください。 そのため、アドオンを再度設定する必要がある場合があります。
2. FTP/SFTPを介して問題ファイルを編集します
場合によっては、「ヘッダー情報を変更できません-ヘッダーは既に送信されています」エラーの原因は、WordPressテーマまたはプラグインエディターを使用してアクセスできるファイルにありません。 または、WordPress以外のサイトを使用している可能性があります。
これらのシナリオでは、FTP/SFTPを使用して問題のあるファイルにアクセスするのが最善のオプションです。 そのためには、FileZillaプラットフォームなどのFTPまたはSFTPクライアントを使用する必要があります。
また、WebサイトのFTP/SFTPクレデンシャルにアクセスする必要があります。 ほとんどの場合、ホスティングパネル内でそれらを見つけることができるはずです。
あなたのeコマースウェブサイトのための超高速、信頼性、そして完全に安全なホスティングが必要ですか? Kinstaは、WooCommerceの専門家によるこれらすべてのサポートと24時間年中無休のワールドクラスのサポートを提供します。 私たちの計画をチェックしてください
Kinstaを使用している場合は、MyKinstaにアクセスし、[サイト]でWebサイトを選択して、[情報]タブをクリックします。
資格情報を取得したら、FTPまたはSFTPクライアントを使用してWebサイトに接続します。 サイトのルートフォルダを見つける必要があります。 通常、その名前はroot、public_html 、 public 、または自分のサイトの名前である必要があります。
WordPressルートフォルダの内部がどのように見えるかを簡単に見てみましょう。
先に進み、「ヘッダー情報を変更できません–ヘッダーは既に送信されています」というエラーが示すファイルを見つけます。 たとえば、問題がpublic/wp-config.php
の場合は、ファイルを右クリックして、[表示/編集]オプションを選択します。
このオプションは、デフォルトのテキストエディタを使用して選択したファイルを開きます。 ドキュメントが開いたら、エラーメッセージが示した行に移動して、問題を特定します。
エラーを見つけることができない場合は、PHPファイルの操作経験がある人に相談する必要があるかもしれません。 ただし、PHPヘッダーの前の空白の問題またはステートメントを処理しているとします。 その場合は、自分で問題を解決できるはずです。
完了したら、変更をファイルに保存し、FTP/SFTPクライアントを閉じます。 Webサイトに再度アクセスしてみてください。そうすれば、エラーはなくなります。
概要
「警告:ヘッダー情報を変更できません–ヘッダーは既に送信されています」というエラーは、長いメッセージを出力するため、威圧的になる可能性があります。 ただし、その詳細なエラーメッセージにより、このバグのトラブルシューティングは比較的簡単になります。 他の問題とは異なり、これは、どのファイルが原因であり、どのコード行を調べる必要があるかを示すのに十分丁寧です。
エラーの原因となっているファイルに応じて、トラブルシューティングを行うには2つの方法があります。
- プラグイン/テーマエディタを使用してエラーを修正するか、プラグインを置き換えます。
- FTP/SFTPクライアントを介して問題ファイルを編集します。
このエラーの原因を見つけるのは簡単です。 ただし、PHPに慣れていない場合は、修正が問題になる可能性があります。
このエラーの修正にまだ問題がありますか? 以下のコメントで私たちのコミュニティとあなたの経験を共有してください!