> 운영 및 유지보수 > 엔진스 > nginx에서 PHP 오류 로그 파일을 출력하는 방법

nginx에서 PHP 오류 로그 파일을 출력하는 방법

王林
풀어 주다: 2023-05-18 16:59:04
앞으로
1359명이 탐색했습니다.

Configure Nginx

Nginx 구성 파일에 일부 구성 항목을 추가하여 PHP 오류 로그 파일을 출력합니다. 일반적으로 CentOS 시스템의 Nginx 구성 파일은 /etc/nginx/nginx.conf에 저장됩니다. 일반적으로 파일 상단에 위치하며 파일에서 http 모듈의 구성 섹션을 찾아 다음 구성 항목을 추가할 수 있습니다.

http {
    ...
    server {
        ...
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;

            # error log
            fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log";
        }
        ...
    }
    ...
}
로그인 후 복사

이 구성 항목은 액세스한 URL이 .php로 끝나는 경우에만 적용됩니다. , 위치 ~ .php$ 를 사용하세요. PHP FastCGI 서버의 주소와 포트는 fastcgi_pass에 설정됩니다. fastcgi_param은 PHP 매개변수를 설정하는 데 사용됩니다. 여기서 SCRIPT_FILENAME은 PHP 스크립트의 경로와 파일 이름을 지정합니다. 기본 FastCGI 매개변수를 사용하려면 fastcgi_params가 Nginx에 포함되어야 합니다. 마지막 줄에는 fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log";가 추가되는데, 이는 PHP 오류 정보를 /var/log/nginx/php_errors.log 파일에 기록한다는 의미입니다.

로그 파일 생성

PHP 오류 정보를 기록하기 위한 로그 파일을 생성합니다. Nginx 구성 후 필요한 단계입니다. 로그 파일을 /var/log/nginx/php_errors.log에 저장한다고 가정하면 다음 명령을 사용하여 파일을 생성할 수 있습니다:

sudo touch /var/log/nginx/php_errors.log
로그인 후 복사

그런 다음 다음 명령을 사용하여 파일의 소유자와 권한을 수정합니다:

sudo chown nginx:nginx /var/log/nginx/php_errors.log
sudo chmod 644 /var/log/nginx/php_errors.log
로그인 후 복사

Test

Test PHP 스크립트를 생성하고 오류가 발생하는 경우(예:

<?php
echo 1/0;
?>
로그인 후 복사

이 스크립트를 test.php로 저장한 다음 Nginx의 웹 루트 디렉터리(예: /usr/)에 넣습니다. 공유/nginx/html/test.php . http://localhost/test.php를 방문하면 PHP 오류를 발견하게 됩니다. 그런 다음 다음 명령을 사용하여 로그 파일의 내용을 확인하세요.

sudo tail /var/log/nginx/php_errors.log
로그인 후 복사

모든 것이 정상이면 다음과 유사한 오류 메시지가 표시됩니다.

[17-Oct-2021 20:52:42 UTC] PHP Warning:  Division by zero in /usr/share/nginx/html/test.php on line 2
로그인 후 복사

위 내용은 nginx에서 PHP 오류 로그 파일을 출력하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿