2010-06-22 2 views
1

장고 프로젝트 배포 - 게시판을 배포하는 데 문제가있었습니다. 나는 문서가 말한 것을했으나 사이트를 방문 할 때 "오류 403"오류가 발생했습니다. 어쩌면이 질문을 serverfault.com에 게시 했어야했는데, 이것이 일반 사람들이 장고 응용 프로그램을 작성/배포하는 데 도움이 될 수 있다고 생각합니다.Apache + mod_python에서 Django 프로젝트를 배포하는 것에 대해

내가 /data/www/reviewboard에 검토위원회를 설치 : : 여기

설치 모든 파일이 아파치 사용자와 데이터베이스 및 uploaded 디렉터리에 대한 읽기 권한이

 
. 
|-- conf 
| |-- apache-modpython.conf 
| |-- search-cron.conf 
| `-- settings_local.py 
|-- db 
| `-- reviewboard.db 
|-- htdocs 
| |-- errordocs -> /usr/lib/python2.6/site-packages/ReviewBoard-1.0.8-py2.6.egg/reviewboard/htdocs/errordocs 
| |-- media 
| | |-- admin -> /usr/lib/python2.6/site-packages/ReviewBoard-1.0.8-py2.6.egg/reviewboard/htdocs/media/admin 
| | |-- djblets -> /usr/lib/python2.6/site-packages/Djblets-0.6.2-py2.6.egg/djblets/media 
| | |-- rb -> /usr/lib/python2.6/site-packages/ReviewBoard-1.0.8-py2.6.egg/reviewboard/htdocs/media/rb 
| | `-- uploaded 
| |  `-- images 
| `-- rb 
|  |-- errordocs -> ../errordocs/ 
|  `-- media -> ../media/ 
|-- logs 
`-- tmp 

는 아파치 사용자의 쓰기 권한을 가지고 .

conf/apache-modpython.conf의 내용은

입니다 : 나는에 액세스하려고 할 때

Include /data/www/reviewboard/conf/apache-modpython.conf

: 나는 또한 아파치 설정 파일에이 파일이 같은 /etc/httpd/conf/httpd.conf을 인용

<VirtualHost *:80> 
ServerName A.B.C.edu 
DocumentRoot "/data/www/reviewboard/htdocs" 

# Error handlers 
ErrorDocument 500 /errordocs/500.html 

# Serve django pages 
<Location "/rb"> 
    PythonPath "['/data/www/reviewboard/conf'] + sys.path" 
    SetEnv DJANGO_SETTINGS_MODULE reviewboard.settings 
    SetEnv PYTHON_EGG_CACHE "/data/www/reviewboard/tmp/egg_cache" 
    SetHandler mod_python 
    PythonHandler django.core.handlers.modpython 
    PythonAutoReload Off 
    PythonDebug Off 
    # Used to run multiple mod_python sites in the same apache 
    PythonInterpreter reviewboard_reviewboard 
</Location> 

# Serve static media without running it through mod_python 
# (overrides the above) 
<Location "/media"> 
    SetHandler None 
</Location> 
<Location "/errordocs"> 
    SetHandler None 
</Location> 

<Directory "/data/www/reviewboard/htdocs"> 
    AllowOverride All 
</Directory> 

# Alias static media requests to filesystem 
Alias /media /data/www/reviewboard/htdocs/media 
Alias /errordocs /data/www/reviewboard/htdocs/errordocs 
    </VirtualHost> 

http://A.B.C.edu/rb에 의해 사이트가 403 오류가 있고이 메시지를 httpd 오류 로그에서 보았습니다 :

 
[Tue Jun 22 08:52:57 2010] [notice] Apache/2.2.11 (Mandriva Linux/PREFORK-10.1mdv2009.1) mod_python/3.3.1 Python/2.6.1 DAV/2 SVN/1.6.1 mod_ssl/2.2.11 OpenSSL/0.9.8k configured -- resuming normal operations 
[Tue Jun 22 08:53:30 2010] [error] [client X.X.X.X] client denied by server configuration: /data/www/reviewboard/htdocs/rb 

내가 뭘 잘못했는지 아는 사람 있습니까? 미리 감사드립니다!

답변

1

당신은 심사위원회의 저자에서 답을 찾을 수/데이터/www /에서 reviewboard/htdocs에

<Directory "/data/www/reviewboard/htdocs"> 
    Order allow,deny 
    Allow from * 
    AllowOverride All 
</Directory> 
+0

감사합니다. 내가 제안한 것을 추가했지만 여전히 로그에서 같은 오류가 발생했습니다. httpd가 존재하지 않는 "/ data/www/reviewboard/htdocs/rb"디렉토리에 액세스하려고 시도하는 것 같습니다. 구성 파일은 일반 파일 시스템에 액세스하는 대신 Django 응용 프로그램을 실행하도록 httpd에 지시하지 않습니까? – evergreen

+0

아, 무슨 뜻인지 알 겠어. 아파치가 mod_python으로 보내는 대신에 dir을 선택하고있다. 내 대답은 403 처리하는 데 도움을려고했다. 일반적으로 mod_wsgi를 사용하므로 mod_python 문제가 즉시 해결되지 않는다. – supersighs

+0

정확히. mod_python에 내가 뭘 잘못했는지에 대한 아이디어가 있습니까? 구성 파일은 실제로 게시판의 "rb-site"스크립트에 의해 자동 생성되었습니다. – evergreen

관련 문제