誰もが参照可能なファイルにエラーを書き出します
  • エラー
  • セキュリティ
  • PR
最終更新日:
サイト引越し屋さん編集部サイト引越し屋さん編集部

「誰もが参照可能なファイルにエラーを書き出します」の原因と対処法

WordPressのサイトヘルスに「潜在的に誰もが参照可能なファイルにエラーを書き出します」と表示されていませんか?

これは、開発用のデバッグ設定が本番サイトで有効のままになっていることを知らせる警告です。エラーの記録ファイルにはサーバーのフォルダ構成やプラグイン名が書かれており、第三者に見られると攻撃の手がかりになります。

サイト引越し屋さんにも、「デバッグログが露出している」という企業の社内IT部門からのご相談がありました。本記事では、警告の意味とリスク、wp-config.phpの修正手順を実例とあわせて解説します。

\サイトヘルスの問題を私たちが代わりに解決します!/

「デバッグログが外部から見られていないか心配」
「wp-config.phpを自分で編集するのが怖い」

そんなときは私たちサイト引越し屋さんにお任せください。
専門のエンジニアが作業を代行させていただきます。

ご相談はこちらからどうぞ

「誰もが参照可能なファイルにエラーを書き出します」はどんな警告?

wp-config.phpでエラーの記録(デバッグログ)が有効になっているときに表示されます。ログの保存先がWordPressのフォルダ内だと「致命的な問題」、それ以外なら「おすすめの改善」として表示されます。

警告の引き金になる設定

wp-config.phpに次の2行が両方とも true で書かれていると、この警告が出ます。

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

WP_DEBUG_LOG を true にすると、エラーは通常「wp-content/debug.log」に記録されます。このファイルは公開フォルダ内にあるため、設定によっては「https://ドメイン/wp-content/debug.log」で誰でも読めてしまいます。

漏れると危険な情報

デバッグログには、次のような情報が記録されていきます。

  • サーバー内のフォルダのパス(アカウント名を含むこともある)
  • 使っているプラグイン・テーマの名前と不具合箇所
  • データベースのエラー内容

これらは、脆弱性のあるプラグインを探す攻撃者にとって格好の手がかりです。ログは放置するほど肥大化し、サーバー容量も圧迫します。

===

サイト引越し屋さんでは、サイトヘルスに関わる様々なお悩みにご対応可能です。
→無料ご相談窓口はこちら

「誰もが参照可能なファイルにエラーを書き出します」の原因

原因1.制作時のデバッグ設定がそのまま残っている

制作会社が開発中に有効にした設定が、公開後も戻されていないケースです。制作会社から管理を引き継いだサイトでよく見られます。

原因2.不具合の調査後に設定を戻し忘れている

画面が真っ白になったときなど、原因を調べるためにデバッグを有効にすることがあります。調査が終わった後に、元に戻し忘れているケースです。

原因3.ログの保存先を公開フォルダの外にしていない

ログを意図的に取り続けたい場合も、保存先が初期値のままだと公開フォルダ内に書き出されます。

===

サイト引越し屋さんでは、サーバー移転やデータバックアップをはじめて、本番公開作業やサイトの不具合修正・メンテナンスなど様々なお悩みにご対応可能です。
→無料ご相談窓口はこちら

「誰もが参照可能なファイルにエラーを書き出します」の対処法

作業前に、wp-config.phpのバックアップを取ってください。書き間違えると、サイト全体が表示されなくなります。

対処法1.デバッグモードを無効にする

本番サイトでは、基本的にデバッグは不要です。wp-config.phpの該当箇所を次のように書き換えます。

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

対処法2.ログが必要なら公開フォルダの外に保存する

不具合の調査でログを取り続けたい場合は、WP_DEBUG_LOG に公開フォルダの外のパスを指定します。あわせて、画面にエラーを出さない設定も入れましょう。この場合も警告は「おすすめの改善」として残るため、調査が終わったら対処法1の状態に戻します。

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', '/home/アカウント名/logs/wp-debug.log' );
define( 'WP_DEBUG_DISPLAY', false );

WP_DEBUG_DISPLAY が有効だと、より深刻な「サイト訪問者へエラー表示を行う設定になっています」という警告に切り替わります。ログを取るときは、画面表示を必ずオフにしましょう。

対処法3.残っているdebug.logを削除する

設定を変えても、すでに書き出されたファイルは残ります。FTPやサーバーのファイルマネージャーで「wp-content/debug.log」を削除します。中身を調査に使う場合は、手元に保存してから削除しましょう。

対処法4..htaccessでログへのアクセスを拒否する

念のため、.htaccessで .log ファイルへのアクセスを拒否しておくと、設定を戻し忘れたときの保険になります。

サイト引越し屋さんに寄せられた実際の相談事例:サーバー移設の相談時にデバッグログの露出が判明(製造業)

コーポレートサイトを社内サーバーで運用していた企業様から、サーバー移設と保守のご相談をいただきました。サイトヘルスでは「致命的な問題3件・おすすめの改善5件」が検出されており、その1つがこの警告です。

社内の調査では、WP_DEBUG_LOG が有効でデバッグログが露出していると判断されていました。

このケースでは、制作会社に保守を打診したものの、「サーバー運用の責任範囲が広く対応が難しい」と断られていました。弊社では、移設にあわせてデバッグ設定を含むサイトヘルスの各項目を、保守の範囲で対応する方針をご提案しています。

この警告は、他のサイトヘルスの警告と同時に出ることが多いです。設定が整理されていないサイトだというサインとして、全体を点検するきっかけにしましょう。

まとめ:本番サイトのデバッグは無効にしましょう

「誰もが参照可能なファイルにエラーを書き出します」は、wp-config.phpで WP_DEBUG と WP_DEBUG_LOG が有効になっているときに出る警告です。デバッグログにはサーバーのパスやプラグイン名が含まれ、外部から読まれると攻撃の手がかりになります。

本番サイトではデバッグを無効にし、残ったdebug.logも削除しましょう。ログが必要な場合は、公開フォルダの外に保存します。

wp-config.phpの編集に不安がある方は、サイト引越し屋さんにご相談ください。

\サイトヘルスの問題を私たちが代わりに解決します!/

「デバッグログが外部から見られていないか心配」
「wp-config.phpを自分で編集するのが怖い」

そんなときは私たちサイト引越し屋さんにお任せください。
専門のエンジニアが作業を代行させていただきます。

ご相談はこちらからどうぞ

この記事を書いた人

サイト引越し屋さん編集部

サイト引越し屋さん編集部

累計対応実績3,500案件以上、日本で最も利用されているサーバー移転&保守代行サービス『サイト引越し屋さん』のマーケティング部です。 サイト引越しに関わる技術情報をはじめ、WordPressやその他のWebサービスに関するノウハウを発信しています。 全日本SEO協会所属。

本サイトにてご提供している情報については、最新かつ正確な情報を提供するよう努力していますが、情報の正確性や完全性を保証するものではございません。また、コンテンツには一部プロモーションが含まれております。本サイトの情報を利用することによって生じたいかなる損害に対しても、当社は責任を負いかねます。情報をご利用される際は、ご自身の判断と責任において行っていただきますようお願い致します。