2013-03-27 1 views
2

은 내가 nginx -t를 사용하여 내의 nginx의 설정을 테스트 할 때, 그것은 나에게 경고를 제공 발견 (2 : 해당 파일이나 디렉토리가 없음)Nginx가/var/log 대신/var/logs에 로그인하려고합니까?</p> <p>의 nginx : [경고] 열 수 없습니다 오류 로그 파일 : 개방() "/var/logs/nginx/error.log"

nginx의 로그 경로는 실제로/var/log/nginx/not/var/logs/nginx로 설정되어 있으므로 어떤 의미가 있습니다.

전체 nginx config 디렉토리를 스캔했는데/var/logs를 참조하는 것이 없습니다. 이 로그 위치를 쓸 수있는 곳을 잃어 버렸습니다.

답변

7

실행 터미널에서이 명령 (참고 : 자본 V) : 당신이 거기의/var/로그를 찾을 수 있습니까

nginx -V 

? nginx는 기본 파일 위치로 컴파일 될 수 있습니다.

[편집]

내가 서버 블록의 일부는 "의 error_log"지시문이 없다고 생각한다. 그래서 nginx는 그들을 위해 기본 시도합니다. 기본적으로 error_log는 항상 켜져 있습니다. 당신은 나쁜 컴파일 된 기본이

error_log /var/log/nginx/error.log; 
2

:

이 문제를 해결하려면, 당신은 모든 자식 블록이 설정을 상속 할 수있는 등 주요 블록이 선 (최상위)를 추가 할 수 있습니다. 구성을로드하기 전에 nginx가 컴파일 할 때 정의한 오류 로그의 경로로 이동합니다. 당신이 할 수없는 경우 로그에 sane path 나 symlink log로 nginx를 다시 컴파일하십시오.