2016-11-17 4 views
-1

wsgi를 사용하여 apache2에 플라스크 응용 프로그램을 배포하는 데 문제가 있습니다. 아파치 2는 마치 잘 돌아가는 것처럼 다시 시작하지만, 브라우저로 액세스하려고하면 "403 Forbidden"오류가 발생합니다. 여기 내 코드가있다.wsgi를 사용하여 아파치에 플라스크 앱을 배포 할 때 권한 오류를 해결하는 방법은 무엇입니까?

webroombooker.wsgi

#!/usr/bin/python 

import sys 
import logging 

logging.basicConfig(stream=sys.stderr) 

sys.path.insert(0,"/home/pi/Website/webroombooker.py") 

from webroombooker import app as application 

여기.

/home/pi/Website 
├── hellotest.py 
├── hellotest.pyc 
├── index.html.en 
├── index.html.en~orig.html 
├── main.html 
├── PoweredByMacOSX.gif 
├── PoweredByMacOSXLarge.gif 
├── templates 
│    ├── profile.html 
│    ├── registration2.html 
│    ├── registration.html 
│    ├── seleniumtemplate2.html 
│    └── seleniumtemplatetime.html 
├── Test 
├── webroombooker.py 
├── webroombooker.pyc 
└── webroombooker.wsgi 

플라스크 응용 프로그램과 WSGI 파일에있는 디렉토리 내 디렉토리 트리입니다 그리고 여기에 아파치 가상 호스트 파일입니다. 여기

<VirtualHost *:80> 
      ServerName localhost 

      WSGIScriptAlias//home/pi/Website/webroombooker.wsgi 

      <Directory /home/pi/Website/webroombooker.py/> 
        Require all granted 
      </Directory> 
      ErrorLog ${APACHE_LOG_DIR}/error.log 
      LogLevel warn 
      CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost> 

실제로 지금 에러를 도시하는 관련 에러 로그 라인 이다.

[Thu Nov 17 14:07:39.939432 2016] [authz_core:error] [pid 15949:tid   1972368432] [client ::1:55490] AH01630: client denied by server  configuration: /home/pi/Website/webroombooker.wsgi 
[Thu Nov 17 14:07:40.260731 2016] [authz_core:error] [pid 15949:tid 1963979824] [client ::1:55490] AH01630: client denied by server configuration: /home/pi/Website/webroombooker.wsgi, referer: http://localhost/ 
[Thu Nov 17 14:07:43.506135 2016] [authz_core:error] [pid 15949:tid 1955591216] [client ::1:55490] AH01630: client denied by server configuration: /home/pi/Website/webroombooker.wsgi 
[Thu Nov 17 14:07:43.702542 2016] [authz_core:error] [pid 15949:tid 1947202608] [client ::1:55490] AH01630: client denied by server configuration: /home/pi/Website/webroombooker.wsgi, referer: http://localhost/ 

저는 정말 고맙습니다. 정말 고맙습니다. 도와 주셔서 진심으로 감사드립니다.

+0

아파치 로그 파일의 관련 행을 표시 할 수 있습니까? –

+0

사이트를 요청할 때 어떤 이유로 아파치 로그에 오류가 표시되지 않습니다. –

+0

실제로 오류가 표시됩니다. 나는 그것을 게시 할 것이다 –

답변

0

아파치가 액세스하는 일부 파일에 대한 유닉스 허가로 인해 발생했을 가능성이 큽니다. Apache는 사용자 www-data으로 실행됩니다. 파일은 사용자가 소유하고있을 가능성이 큽니다. 관련 파일에 sudo chmod a+w <filename>을 실행 해보십시오. 아마도 귀하의 wsgi 파일이 될 것입니다.

+0

모든 권한이 올바르게 설정되어 있다고 생각합니다. 보기 변경 및 실행 권한은 모든 사용자에게 설정됩니다. 웹 사이트 디렉토리의 모든 파일에 있습니다. –

+0

질문에 /home/pi/Website/webroombooker.wsgi를 포함시킬 수 있습니까? 오류는 요청 된 리소스에 대한 클라이언트 액세스를 거부하는 내부의 내용을 말하고있는 것 같습니다. –

+0

안녕하세요! 감사! 나는 그것이 질문의 첫 번째 코드 블록에있는 것이라고 믿습니다. 방금 이름을 변경했습니다. 내 잘못이야. –