403 Django和mod_wsgi的禁止错误

g4u*_*r4v 31 python django mod-wsgi apache2

我在主目录中创建了Django项目,因此它位于主目录中.

建立

Django Verison  : 1.5.1
Python Version  : 2.7.5
mod_wsgi Version: 3.4
Home Directory  : /home/aettool
Run Code Online (Sandbox Code Playgroud)

的内容 /home/aettool/aet/apache/django.wsgi

import os
import sys
os.environ['DJANGO_SETTINGS_MODULE'] = 'aet.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Run Code Online (Sandbox Code Playgroud)

的意见 httpd.conf

WSGIScriptAlias / /home/aettool/aet/apache/django.wsgi

<Directory /home/aettool/aet/apache>
Order deny,allow
Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)

错误 error_log

[Sun Jul 21 02:01:30.923364 2013] [authz_core:error] [pid 21540:tid 1193011520] [client 10.20.17.184:51340] AH01630: client denied by server configuration: /home/aettool/aet/apache/django.wsgi
Run Code Online (Sandbox Code Playgroud)

的内容 urls.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
    url(r'^admin/', include(admin.site.urls)),
)
Run Code Online (Sandbox Code Playgroud)

权限 /home/aettool/aet : 775

权限 /home/aettool/aet/apache : 755

权限 django.wsgi file : 664

我在浏览器上收到错误 403 Forbidden You don't have permission to access / on this server.

请帮我配置一下.

编辑

现在我正在改变

<Directory />
    AllowOverride none
    Require all denied
</Directory>
Run Code Online (Sandbox Code Playgroud)

<Directory />
    Order deny,allow
    Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)

所以,这肯定与httpd.conf文件配置有关,但我担心的是我只在该文件中添加了5行而无法弄清楚是什么问题.

Sdr*_*dra 39

显然这是一个与Apache 2.4和旧版本相关的问题.您需要替换您的apache配置:

Allow from all
Run Code Online (Sandbox Code Playgroud)

Require all granted
Run Code Online (Sandbox Code Playgroud)

在该<Files wsgi.py>部分

  • 这让我发疯了 (2认同)

dno*_*zay 16

您可以使用以下内容:

<Directory /home/aettool/aet/apache>
  <IfVersion < 2.3 >
   Order allow,deny
   Allow from all
  </IfVersion>
  <IfVersion >= 2.3>
   Require all granted
  </IfVersion>
</Directory>
Run Code Online (Sandbox Code Playgroud)

  • 在旧的apache版本上,需要使用```sudo a2enmod version``启用"version"mod. (2认同)