복붙노트

PHP는 어디에서 에러 로그를 저장합니까? (php5, apache, fastcgi, cpanel)

PHP

PHP는 어디에서 에러 로그를 저장합니까? (php5, apache, fastcgi, cpanel)

나는 공유 호스팅에 있고 Cpanel, 아파치, PHP는 fastcgi에 의해 운영된다. PHP는 어디에서 에러 로그를 저장합니까?

error_log 파일을 찾기 위해 전체 사이트 구조를 거치지 않고 공유 호스팅 환경에서 오류 로그를 찾을 수있는 다른 방법이 있습니까?

php.ini (PHP 버전 5.2.16을 사용하고 있습니다)에 액세스 할 수 있습니다.

해결법

  1. ==============================

    1.php가 apache2 모듈 인 경우 PHP는 / var / log / apache2에 오류 로그를 저장합니다. 공유 호스트는 종종 루트 디렉토리 / 로그 하위 폴더에 로그 파일을 저장합니다. 하지만 ... php.ini 파일에 접근 할 수 있다면 이렇게 할 수 있습니다 :

    php가 apache2 모듈 인 경우 PHP는 / var / log / apache2에 오류 로그를 저장합니다. 공유 호스트는 종종 루트 디렉토리 / 로그 하위 폴더에 로그 파일을 저장합니다. 하지만 ... php.ini 파일에 접근 할 수 있다면 이렇게 할 수 있습니다 :

    error_log = /var/log/php-scripts.log
    

    rinogo의 의견에 따르면 : cPanel을 사용하고 있다면, 아마도 당신이 찾고있는 마스터 로그 파일이 (기본값으로)

    /usr/local/apache/logs/error_log
    

    다른 모든 것이 실패하면 다음을 사용하여 로그 파일의 위치를 ​​확인할 수 있습니다.

    <?php phpinfo(); ?>
    
  2. ==============================

    2.phpinfo ()를 시도하고 "error_log"를 확인하십시오.

    phpinfo ()를 시도하고 "error_log"를 확인하십시오.

  3. ==============================

    3.램프 환경에서 PHP 오류는 기본적으로이 파일 아래로 전달됩니다.

    램프 환경에서 PHP 오류는 기본적으로이 파일 아래로 전달됩니다.

    /var/log/httpd/error_log
    

    모든 액세스 로그는 다음과 같습니다.

    /var/log/httpd/access_log
    
  4. ==============================

    4.

    php --info | grep error 
    

    터미널은 오류 로그 위치를 출력합니다.

    php --info | findstr /r /c:"error_log"
    

    명령 프롬프트는 오류 로그 위치를 출력합니다

    php.ini 파일을 열고 다음 줄을 추가하십시오 :

    error_log = /log/myCustomLog.log
    

    감사합니다 @ chelmertez, @Boom (질문에 대한 의견).

  5. ==============================

    5.Linux에서 PHP 오류 로그를 찾는 방법 :

    Linux에서 PHP 오류 로그를 찾는 방법 :

    eric@dev /var $ sudo updatedb
    [sudo] password for eric:
    eric@dev /var $ sudo locate error_log
    
    /var/log/httpd/error_log
    

    다른 동등한 방법 :

    eric@dev /home/eric $ sudo find / -name "error_log" 2>/dev/null
    
    /var/log/httpd/error_log
    
  6. ==============================

    6.Google Compute Engine에있는 경우 /var/log/apache2/error.log가 될 수도 있습니다.

    Google Compute Engine에있는 경우 /var/log/apache2/error.log가 될 수도 있습니다.

    그리고 이렇게 꼬리를 볼 수 있습니다 :

    tail -f /var/log/apache2/error.log
    
  7. ==============================

    7.기본적으로 php는 어디에서나 에러를 기록하지 않는 것으로 보이며 php.ini의 error_log 키는 내가 본 모든 설치에서 주석 처리됩니다.

    기본적으로 php는 어디에서나 에러를 기록하지 않는 것으로 보이며 php.ini의 error_log 키는 내가 본 모든 설치에서 주석 처리됩니다.

    일반적으로 나는 :

  8. ==============================

    8.php.ini 파일에서 error_log 변수를 설정할 때 절대 경로를 사용해야합니다. 그렇지 않으면 상대 경로에 따라 오류 로그가 저장됩니다.

    php.ini 파일에서 error_log 변수를 설정할 때 절대 경로를 사용해야합니다. 그렇지 않으면 상대 경로에 따라 오류 로그가 저장됩니다.

    error_log = /var/log/php.errors
    

    다른 해결책은 디렉토리 트리에서 모든 오류 로그 파일을 나열하는 간단한 스크립트를 작성하는 것입니다.

  9. ==============================

    9.소스에서 Apache와 PHP를 빌드 한 경우 기본적으로 $ {Apache install dir} / logs / error_log (일반적으로 / usr / local / apache2 / logs / error_log)에 오류 로그가 생성됩니다. 그렇지 않으면 저장소에서 설치 한 경우 /var/log/apache2/error_log에서 찾을 수 있습니다. php.ini의 경로도 설정하고 phpinfo ()를 호출하여 경로를 확인할 수 있습니다.

    소스에서 Apache와 PHP를 빌드 한 경우 기본적으로 $ {Apache install dir} / logs / error_log (일반적으로 / usr / local / apache2 / logs / error_log)에 오류 로그가 생성됩니다. 그렇지 않으면 저장소에서 설치 한 경우 /var/log/apache2/error_log에서 찾을 수 있습니다. php.ini의 경로도 설정하고 phpinfo ()를 호출하여 경로를 확인할 수 있습니다.

  10. ==============================

    10.가장 좋은 방법은 httpd.conf 파일을보고 기본값이 무엇인지 확인하는 것입니다. 또한 특정 가상 호스트에 의해 무시 될 수 있습니다. 먼저 /etc/httpd/conf/httpd.conf 또는 /etc/apache2/httpd.conf를보고 error_log를 검색합니다. / var / log / httpd / error_log 또는 / var / log / apache2 / error_log로 나열 될 수 있지만 단순히 logs / error_log로 나열 될 수도 있습니다.

    가장 좋은 방법은 httpd.conf 파일을보고 기본값이 무엇인지 확인하는 것입니다. 또한 특정 가상 호스트에 의해 무시 될 수 있습니다. 먼저 /etc/httpd/conf/httpd.conf 또는 /etc/apache2/httpd.conf를보고 error_log를 검색합니다. / var / log / httpd / error_log 또는 / var / log / apache2 / error_log로 나열 될 수 있지만 단순히 logs / error_log로 나열 될 수도 있습니다.

    이 경우 상대 경로이므로 / etc / httpd / logs / error_log 아래에 있음을 의미합니다. 여전히 찾을 수 없다면 httpd.conf 파일의 맨 아래를 확인하고 가상 호스트가 포함 된 위치를 확인하십시오. /etc/httpd/conf.d/<-에 "기타"또는 "추가"로있을 수 있습니다. 가상 호스트는 ErrorLog "/ path / to / error_log"로 대체 할 수 있습니다.

  11. ==============================

    11.php5-fpm 로그를 사용하는 경우 기본값이 아래에 있어야합니다.

    php5-fpm 로그를 사용하는 경우 기본값이 아래에 있어야합니다.

    /var/log/php5-fpm.log
    
  12. ==============================

    12.NGINX는 보통 /var/log/nginx/error.log 또는 access.log에 저장합니다. (어쨌든 우분투에서)

    NGINX는 보통 /var/log/nginx/error.log 또는 access.log에 저장합니다. (어쨌든 우분투에서)

  13. ==============================

    13.php.ini에서 오류 로그 파일을 구성 할 때 절대 경로 또는 상대 경로를 사용할 수 있습니다. 상대 경로는 생성 스크립트의 위치에 따라 결정되며 스크립트가있는 각 디렉토리에 로그 파일이 생성됩니다. 모든 오류 메시지를 동일한 파일로 이동하려면 절대 경로를 사용하십시오. 파일.

    php.ini에서 오류 로그 파일을 구성 할 때 절대 경로 또는 상대 경로를 사용할 수 있습니다. 상대 경로는 생성 스크립트의 위치에 따라 결정되며 스크립트가있는 각 디렉토리에 로그 파일이 생성됩니다. 모든 오류 메시지를 동일한 파일로 이동하려면 절대 경로를 사용하십시오. 파일.

    자세한 내용은 여기를 참조하십시오. http://www.php.net/manual/en/ref.errorfunc.php#53025

  14. ==============================

    14.당신이 그것을 원한다면, 함수 호출을 설정하십시오 : error_log ($ errorMessageforLog. "\ n", 4, 'somePath / SomeFileName.som');

    당신이 그것을 원한다면, 함수 호출을 설정하십시오 : error_log ($ errorMessageforLog. "\ n", 4, 'somePath / SomeFileName.som');

  15. ==============================

    15.

    php --info | grep error
    

    도움이됩니다. 질문에 sjas에 의해 댓글을 달았습니다. 그래서 대답으로 포함 시켰습니다.

  16. ==============================

    16.cat |을 실행하여 httpd.conf 파일에서 ErrorLog를 검색하십시오. grep ErrorLog 명령 줄에서. 예 :

    cat |을 실행하여 httpd.conf 파일에서 ErrorLog를 검색하십시오. grep ErrorLog 명령 줄에서. 예 :

    $ cat /etc/apache2/httpd.conf | grep ErrorLog
    

    산출:

    # ErrorLog: The location of the error log file.
    # If you do not specify an ErrorLog directive within a <VirtualHost>
    ErrorLog "/private/var/log/apache2/error_log"
    

    ErrorLog로 시작하는 행을 찾으십시오. 그 답이 있습니다.

    참고 : 가상 호스트의 경우 가상 호스트 파일 httpd-vhosts.conf를 편집하여 다른 로그 파일 위치를 지정할 수 있습니다.

  17. ==============================

    17.Wordpress는 WP_DEBUG_LOG가 true로 설정된 경우 error_log () 메시지를 /wp-content/debug.log로 전달합니다.

    Wordpress는 WP_DEBUG_LOG가 true로 설정된 경우 error_log () 메시지를 /wp-content/debug.log로 전달합니다.

    WP_DEBUG_LOG에 대한 Wordpress 문서를 참조하십시오.

  18. from https://stackoverflow.com/questions/5127838/where-does-php-store-the-error-log-php5-apache-fastcgi-cpanel by cc-by-sa and MIT license