PHP는 오류 로그를 어디에 저장합니까? (php5, 아파치, fastcgi, cpanel)
나는 공유 호스팅에 Cpanel, Apache, PHP가 fastcgi에 의해 운영되고 있습니다. PHP는 오류 로그를 어디에 저장합니까?
error_log 파일을 찾기 위해 전체 사이트 구조를 거치지 않고 공유 호스팅 환경에서 오류 로그를 찾을 수있는 다른 방법이 있습니까?
php.ini
(PHP 버전 5.2.16을 사용 하고 있습니다)에 액세스 할 수 있습니다 .
PHP는 /var/log/apache2
PHP가 apache2 모듈 인 경우 오류 로그를 저장 합니다. 공유 호스트는 종종 루트 디렉토리 /log
하위 폴더 에 로그 파일을 저장합니다 . 그러나 ... php.ini
파일에 액세스 할 수 있다면 다음과 같이 할 수 있습니다.
error_log = /var/log/php-scripts.log
rinogo 의 의견 에 따르면 : cPanel을 사용하는 경우 찾고있는 마스터 로그 파일은 (기본적으로)
/usr/local/apache/logs/error_log
다른 모든 방법이 실패하면 다음을 사용하여 로그 파일의 위치를 확인할 수 있습니다
<?php phpinfo(); ?>
시도 phpinfo()
와 "의 error_log"확인
리눅스
php --info | grep error
터미널은 오류 로그 위치를 출력합니다.
윈도우
php --info | findstr /r /c:"error_log"
명령 프롬프트는 오류 로그 위치를 출력합니다
로그 위치를 설정하려면
를 열고 php.ini
다음 줄을 추가하십시오.
error_log = /log/myCustomLog.log
이것에 대해 @chelmertez , @Boom 에게 감사 합니다 (질문에 대한 의견).
램프 환경에서 PHP 오류는 기본적으로 아래 파일로 지정됩니다.
/var/log/httpd/error_log
모든 액세스 로그는 다음과 같습니다.
/var/log/httpd/access_log
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
php.ini 파일에서 error_log 변수를 설정할 때는 절대 경로를 사용해야 합니다. 그렇지 않으면 상대 경로에 따라 오류 로그가 저장됩니다.
error_log = /var/log/php.errors
다른 해결책은 디렉토리 트리의 모든 오류 로그 파일을 나열하는 간단한 스크립트를 작성하는 것입니다.
기본적으로 php 는 어디에서나 오류를 기록하지 않는 것으로 보입니다 error_log
.php.ini 의 키는 내가 본 모든 설치에서 주석 처리됩니다.
일반적으로 나는 :
- php.ini 파일을 찾으십시오.
locate php.ini
. 이 파일에서
error_reporting
값을 검색하십시오 .어느 것이 PHP 로그 레벨의 융합으로 충분하다면 설정해야합니다. ,
예 :
E_ALL & ~E_DEPRECATED & ~E_STRICT
검사
error_log
가 실제 장소를 가리키는 및 주석 있지 않은지 확인하는 값입니다.기본값은 전체 경로를 제공하지 않고 파일 이름 만 제공 하므로이 경로가 정상적으로 해결되는 위치를 모르겠습니다. 아마
/var/log/
.
/var/log/apache2/error.log
Google 컴퓨팅 엔진을 사용하는 경우 에도 가능 합니다.
그리고 당신은 다음과 같이 꼬리를 볼 수 있습니다 :
tail -f /var/log/apache2/error.log
당신은 소스에서 빌드 아파치와 PHP를 가지고 있다면, 기본적으로 오류 로그는 생성된다 ${Apache install dir}/logs/error_log
일반적으로 예 /usr/local/apache2/logs/error_log
. 그렇지 않으면 저장소에서 설치 한 경우 /var/log/apache2/error_log
경로를 찾을 수 있습니다. 경로를 설정 php.ini
하고을 호출하여 확인할 수도 있습니다 phpinfo()
.
가장 좋은 방법은 httpd.conf 파일을보고 기본값이 무엇인지 확인하는 것입니다. 특정 가상 호스트에 의해 재정의 될 수도 있습니다. /etc/httpd/conf/httpd.conf
or 를보고 시작하여 /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/<-에 "other"또는 "extra"로있을 수 있습니다. 가상 호스트는 ErrorLog "/ path / to / error_log"로 가상 호스트를 재정의 할 수 있습니다.
NGINX는 보통 /var/log/nginx/error.log 또는 access.log에 저장합니다. (어쨌든 우분투에서)
php.ini에서 오류 로그 파일을 구성 할 때 절대 경로 또는 상대 경로를 사용할 수 있습니다. 상대 경로는 생성 스크립트의 위치에 따라 해결되며 스크립트가있는 각 디렉토리에 로그 파일이 표시됩니다. 모든 오류 메시지를 동일한 파일로 보내려면 절대 경로를 사용하십시오. 파일.
자세한 내용은 여기를 참조하십시오 : http://www.php.net/manual/en/ref.errorfunc.php#53025
php5-fpm 로그를 사용하는 경우 기본값은
/var/log/php5-fpm.log
php --info | grep error
도움이됩니다. 질문에 sjas가 댓글을 달았습니다. 그래서 나는 그것을 대답으로 포함시켰다.
원하는 곳에 함수 호출을 설정하면 error_log ($ errorMessageforLog. "\ n", 4, 'somePath / SomeFileName.som');
명령 행에서 ErrorLog
실행 하여 httpd.conf 파일을 검색하십시오 cat <file location> | 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
을 편집하여 다른 로그 파일 위치를 지정할 수 있습니다.
- 파일 관리자 확인 로그 폴더로 이동할 수 있습니다.
- public_html 폴더의 로그 파일을 확인하십시오.
- 로그가 저장되어있는 "php phpinfo ()"파일을 확인하십시오.
cPanel 오류 로그는 다음 위치에 있습니다.
/ usr / local / cpanel / logs /
/ usr / local / apache / logs /
기본적으로 Apche 로그는 다음과 같습니다.
/ var / log / apache
또는
/ var / log / apache2
누구나 사용자 정의 로그 위치를 사용하는 경우 다음 명령을 실행하여 위치를 확인할 수 있습니다.
고양이 / etc / apache2 / conf /httpd.conf | grep ErrorLog
apache2 디렉토리가 존재하지 않는다는 오류가 발생하면이 명령을 실행하여 올바른 위치를 찾을 수 있습니다.
아파치 어 is 어
또는
아파치 2
공유 환경에 있고 오류 로그를 찾을 수 없으므로 cPanel 대시 보드에서 cPanel에 옵션 오류가 있는지 항상 확인하십시오. 오류 로그를 찾을 수없는 경우 오류 로그를 찾을 수 있습니다.
cPanel 검색 막대에서 Error를 검색하면 기본적으로 다른 http 오류 페이지의 목록 인 Error Pages가 표시되고 다른 Error는 오류 로그가 표시되는 위치입니다.
공유 환경을 살펴볼 다른 장소 : / home / yourusername / logs / home / yourusername / public_html / error_log
워드 프레스
Wordpress가 true로 설정 되면 error_log()
메시지를 /wp-content/debug.log
표시 WP_DEBUG_LOG
합니다.
WP_DEBUG_LOG에 대한 Wordpress Documentation을 참조하십시오.
'development' 카테고리의 다른 글
유 방향 그래프에서 사이클을 감지하기위한 최상의 알고리즘 (0) | 2020.02.27 |
---|---|
HTML5에서 폴리 필의 의미는 무엇입니까? (0) | 2020.02.27 |
스택 추적 또는 리플렉션을 사용하여 메소드의 호출자를 어떻게 찾을 수 있습니까? (0) | 2020.02.26 |
앞에 붙은 이중 콜론“::”의 의미는 무엇입니까? (0) | 2020.02.26 |
안드로이드 텍스트보기 텍스트를 정당화 (0) | 2020.02.26 |