PHP 프로그램 구문 오류로 인해
장면 1: # 🎜 🎜#
프로젝트는 알람 모니터링(10분마다 웹사이트의 고정 링크에 액세스하도록 예약)으로 설정되어 있습니다. 하루에 두세 번 500 오류 이메일을 받을 때도 있었지만, 수동으로 다시 접속했는데 접속이 정상이네요.. 이게 가장 흔한 오류여야 하고, 문법적인 오류도 금방 다시 나타날 수 있으니 오류 메시지가 노출되는 한 문제가 될 수 있습니다. 즉시 해결됩니다. 로컬이나 테스트 환경이라면 보통 이렇게 처리합니다. 프로그램 입구에서 출력 오류 메시지를 설정하면 됩니다://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); //程序正常执行逻辑......방금 언급한 시나리오 1의 문제는 나중에 로그인에 출력할 때 발견되었습니다. 위와 같은 방법으로 mysql 접속이 비정상적으로 끊어지고 프로그램이 계속 실행되었기 때문에(mysql 접속시에는 정상이었는데, 특정 쿼리 메소드를 호출하면 에러가 발생했다는 점을 기억해두자) mysqli_real_escape_string()을 사용), 드디어 성공적으로 복구되었습니다.
디스크가 가득 차서
시나리오 2:
사진 Go를 업로드할 수 없습니다. 계속해서 500 오류가 발생합니다. 500 디스크 공간이 부족하고 데이터를 읽고 쓸 수 있는 공간이 부족하여 발생하는 오류는 극히 드물며 제때 감지하기 어렵습니다. 일반적으로 500 오류가 발생하면 가장 먼저 떠오르는 것은 프로그램 오류일 수도 있습니다. 실제로 프로그램에서 문제를 찾을 수 없는 경우에는 디스크 공간 부족 때문일 수도 있습니다. 디스크 공간이 부족합니다.df -h 查看磁盘空间占用情况추천 튜토리얼:
위 내용은 PHP 웹사이트 오류 500을 처리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!