mod_wsgi/apache를 사용하여 python2.7에서 웹 응용 프로그램을 실행하고 있습니다. 모든 것은 괜찮지 만 .pyc 파일을 찾을 수 없습니다. mod_wsgi로 생성되지 않습니까?django/apache/mod_wsgi의 .pyc 파일을 찾을 수 없습니다.
1
A
답변
1
기본적으로 아파치는 아마도 장황한 앱 디렉토리 에 대한 쓰기 권한이 없습니다.은 현명한 선택입니다.
이제 파이썬은 아파치를 다시 시작할 때마다 바이트를 다시 컴파일 한 다음 메모리에 캐시합니다.
오랜 과정이기 때문에 괜찮습니다.
참고 : 정말로 그 pyc를 갖고 싶다면 아파치 사용자에게 소스 디렉토리에 대한 쓰기 권한을 부여하십시오.
주 2 : 아파치가 공유하는 테스트 인스턴스를 manage.py로 시작할 때 혼란을 일으킬 수 있습니다. 왜냐하면 소스 코드가 변경 되더라도 아파치를 실행하면 root로 pyc가 만들어지기 때문입니다.
0
모듈을 처음으로 가져 오거나 소스가 현재 컴파일 된 파일보다 최신 인 경우 컴파일 된 코드가 포함 된 .pyc
파일은 일반적으로 .py
파일과 동일한 디렉토리에 만들어집니다. 모듈을 가져 오지 않으면 파일이 생성되지 않습니다.
이 외에도 .pyc
파일을 만들지 못할 수 있습니다. 디렉터리에 대한 사용 권한 문제입니다. 예를 들어 웹 서버로 테스트하는 경우와 같이 한 명의 사용자로 개발하고 다른 사용자로 개발하는 경우 이런 일이 발생할 수 있습니다. .pyc
파일의 생성은 모듈을 가져오고 파이썬이 컴파일 된 모듈을 다시 디렉토리에 쓰는 권한 (여유 공간 등)을 가지고 있다면 자동입니다.
참고 - 스크립트 실행은 가져 오기로 간주되지 않으므로 .pyc
이 생성되지 않습니다.
가져 오지 않은 모듈에 대해 .pyc
파일을 만들어야하는 경우 py_compile
및 compileall
모듈을 사용할 수 있습니다.
Apache에서 pyc 생성을 허용할만한 이유가 없습니다. 아파치를 설정하여 웹 프로세스가 오랫동안 지속되도록해야합니다. 그런 경우 드물게 시작시 읽기만하면 다른 소유권과 관련하여 발생할 수있는 문제로 인해 가치가 없습니다. –