2016-08-31 3 views
0

Django의 기본 로거를 models.py에서 사용하고 있습니다.Django 로깅 오류

import logging 
logging.basicConfig(filename='models.log',level=logging.INFO) 
logging.info('Staring execution. Models for db tables') 

Django 서버에서 작동하며 로그가 작성 중입니다. 앱이 Apache에 배포 될 때 500 Internal Server error이되어 홈 페이지를로드 할 수 없습니다.

OS는 RHEL7입니다. "models.log"의 파일 권한을 읽기/쓰기로 변경했습니다. 여전히 문제가 있습니다. 아파치 conf 파일에서 권한도 부여했습니다.

+1

debug = true 모드에서 실행하고 정확히 무엇이 문제인지 확인하십시오. – sprksh

+0

오류 게시. 당신을 도우 려합니다. – AceLearn

+0

Django 서버에서 작동합니다. 아파치에서 작동하지 않습니다. sys.path에 대한 wsgi.py 파일을 변경할 필요가 있습니까? – Phoenix

답변

1

그것은 SELinux와 관련된 문제입니다. 당신은 로컬로 실행하면, 당신은 로그 파일에 쓸 수있는 모든 권한을 갖습니다.

Apache를 사용하여 서버를 실행하는 경우 Apache에 파일 쓰기 권한이 있어야합니다.

확인하려면 apache sudo su - apache으로 로그인하고 로그 파일에 액세스하십시오.

해결책은 간단합니다. /var/log 폴더에 로그 파일을 넣으십시오. 또는 /var/log/myapp 폴더를 만들고 chmod 777 /var/log/myapp에 액세스하십시오.

import logging 
logging.basicConfig(filename='/var/log/myapp/models.log',level=logging.INFO) 
logging.info('Staring execution. Models for db tables') 
0

프로세스에 이 필요합니다.) 액세스 할 수 있습니다. 가장 좋은 방법은 프로세스가 실행되고 수동으로 파일을 만들려고 사용자로 로그인 할 것입니다. 내 생각 엔 권한 오류가 발생합니다. 디렉터리를 만들고 관련된 권한을 부여합니다. 디렉토리.

+0

그래도 해보았 어. – Phoenix