ホームページ > バックエンド開発 > PHPチュートリアル > PHP セキュリティ - エラー報告

PHP セキュリティ - エラー報告

黄舟
リリース: 2023-03-05 22:36:02
オリジナル
1146 人が閲覧しました


エラー報告

PHP のエラー報告機能は、これらのエラーを特定して見つけるのに役立ちます。 PHP によって提供されるこれらの詳細な説明は、悪意のある攻撃者にも見られる可能性があり、これは良くありません。エラー メッセージを一般公開しないようにすることが重要です。これは簡単です。display_errors をオフにするだけです。もちろん、エラー情報を取得したい場合は、log_errors オプションをオンにして、error_log オプションにエラー ログ ファイルの保存パスを設定します。

エラー報告レベルの設定により一部のエラーが検出されなくなる可能性があるため、error_reporting を少なくとも E_ALL に設定する必要があります (E_ALL | E_STRICT が最高の設定です)。 推奨されないヒントなど、下位互換性に関する提案を提供します)。

すべてのエラー報告レベルはどのレベルでも変更できるため、共有ホスティングを使用している場合は、php.ini、httpd.conf、または .htaccess などの構成ファイルに変更を加える場合、プログラム内でエラー報告レベルの構成ステートメントを実行できます:

CODE:

 <?php
 
  ini_set(&#39;error_reporting&#39;, E_ALL | E_STRICT);
  ini_set(&#39;display_errors&#39;, &#39;Off&#39;);
  ini_set(&#39;log_errors&#39;, &#39;On&#39;);
  ini_set(&#39;error_log&#39;,
&#39;/usr/local/apache/logs/error_log&#39;);
 
  ?>
ログイン後にコピー


Tips

http://www. php .cn/ php.iniのオプション構成について詳しく説明します。

PHP では set_error_handler( ) を渡すこともできます Function は独自のエラー処理関数を指定します。

CODE:

 <?php
 
  set_error_handler(&#39;my_error_handler&#39;);
 
  ?>
ログイン後にコピー

上記のプログラムは、独自のエラー処理関数 my_error_handler( ); を指定します。 実際の使用例は次のとおりです:

CODE:

 <?php
 
  function my_error_handler($number, $string, $file,
$line, $context)
  {
    $error = "=  ==  ==  ==  ==\nPHP ERROR\n=  ==
 ==  ==  ==\n";
    $error .= "Number: [$number]\n";
    $error .= "String: [$string]\n";
    $error .= "File:   [$file]\n";
    $error .= "Line:   [$line]\n";
    $error .= "Context:\n" . print_r($context, TRUE)
. "\n\n";
 
    error_log($error, 3,
&#39;/usr/local/apache/logs/error_log&#39;);
  }
 
  ?>
ログイン後にコピー

Tips

PHP 5 では set_error_handler( ) 2 番目のパラメーターを渡して、定義されたエラー処理関数が実行されるエラー条件を制限します。たとえば、警告レベルのエラーを処理する関数を作成します。

CODE:

 <?php
  set_error_handler(&#39;my_warning_handler&#39;,
E_WARNING);
  ?>
ログイン後にコピー

上記は、PHP セキュリティ エラー レポートの内容です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www) に注意してください。 .php.cn )!


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート