ホームページ  >  記事  >  バックエンド開発  >  PHPが500エラーを報告する

PHPが500エラーを報告する

angryTom
angryTomオリジナル
2019-10-31 16:45:304136ブラウズ

PHPが500エラーを報告する

php が 500 エラーを報告します

http リクエスト エラーのステータス コードが 500 の場合、通常の説明は次のとおりです。サーバーで発生したエラー エラーが発生し、リクエストを完了できませんでした (つまり、内部サーバー エラー) ただし、特定の問題については詳細に分析する必要があります。ここでは、約 500 件の問題と解決策を紹介します。

1. PHP プログラムの構文エラーにより

が発生する シナリオ 1: プロジェクトにはアラーム監視が設定されています (Web サイトの固定リンクに 10 分ごとに定期的にアクセスします)一時期、500 エラーを報告するメールが 1 日に 2 ~ 3 回届きましたが、手動で再度アクセスすると正常にアクセスされました...

これが最も一般的なエラーです。 、文法エラーもすぐに現れる可能性があります。エラー メッセージが公開されている限り、問題はすぐに解決できます。

ローカル環境やテスト環境の場合、通常は次のように処理します。プログラムの入り口に出力エラー メッセージを設定するだけです:

//error_reporting设置应该报告的错误,下面表示除了 E_NOTICE,报告其他所有错误
error_reporting(E_ALL ^ E_NOTICE);
//输出错误
ini_set('display_errors', 1);

ただし、オンライン環境では、ユーザーがこれを使用すると、このような露骨な印刷ミスを許すことはできません。どうすればよいでしょうか?プログラム エントリ ファイルのログ ファイルにエラー出力を設定できます。具体的なコードは次のとおりです:

error_reporting(E_ALL ^ E_NOTICE);
//禁止把错误输出到页面
ini_set('display_errors', 0);
//设置错误信息输出到文件
ini_set('log_errors', 1);
//指定错误日志文件名
$error_dir = '/logs/err/';
$error_file = $error_dir . date('Ymd').'.log';
//目录不存在就创建
if (!is_dir($error_dir)){
    mkdir($error_dir, 0777, true);
}
//文件不存在就创建之
if(!file_exists($error_file)){
    $fp = fopen($error_file, 'w+');
    if($fp){
        fclose($fp);
    }
}
//设置错误输出文件
ini_set("error_log", $error_file);
//程序正常执行逻辑......

2. ディスクがいっぱいであるため、

シナリオ2: 写真をアップロードすると、エラー 500 が報告され続けます。

ディスク容量不足やデータの読み書きに必要な容量不足が原因で発生する 500 エラーは、非常にまれであり、時間内に検出するのが困難です。通常、500 エラーが発生した場合、最初にプログラムのエラーが思い浮かびますが、実際には、ディスク容量の不足が原因である可能性もあります。プログラムに問題が見つかった場合は、ディスク容量の不足が原因かどうかを確認できます。ディスク容量~

df -h ディスク容量の使用状況を確認します

PHP 関連の詳細については、PHP 中国語 Web サイトをご覧ください。

以上がPHPが500エラーを報告するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。