with python3 mod_wsgi how and python django apache2 mod-wsgi

python3 - 403 Error prohibido con Django y mod_wsgi



wsgi django (4)

Creé el proyecto Django en el directorio de inicio, por lo que está en el directorio de inicio.

Preparar

Django Verison : 1.5.1 Python Version : 2.7.5 mod_wsgi Version: 3.4 Home Directory : /home/aettool

Contenido de /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()

Contect de httpd.conf

WSGIScriptAlias / /home/aettool/aet/apache/django.wsgi <Directory /home/aettool/aet/apache> Order deny,allow Allow from all </Directory>

Error en 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

Contenido de 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)), )

Permisos de /home/aettool/aet : 775

Permisos de /home/aettool/aet/apache : 755

Permisos del django.wsgi file : 664

Recibo un error en el navegador 403 Forbidden You don''t have permission to access / on this server.

Por favor ayúdame con la configuración.

EDITAR

Por ahora estoy avanzando cambiando.

<Directory /> AllowOverride none Require all denied </Directory>

a

<Directory /> Order deny,allow Allow from all </Directory>

Por lo tanto, esto definitivamente tiene algo que ver con la configuración del archivo httpd.conf , pero mi preocupación es que solo agregué 5 líneas en ese archivo y no puedo averiguar qué está mal.


Aparentemente este es un problema relacionado con Apache 2.4 y versiones anteriores. Necesita reemplazar en su configuración de apache:

Allow from all

con

Require all granted

en la sección <Files wsgi.py>


Esto ha sido reportado en el boleto de Django 19319:

https://code.djangoproject.com/ticket/19319

Su configuración de Apache ahora necesita lo siguiente para su archivo wsgi.py

<Directory /path/to/your/wsgi-script> <Files wsgi.py> Order deny,allow Allow from all Require all granted </Files> </Directory>


Hay otro gotcha:

Verifique su archivo httpd.conf para la siguiente configuración:

<IfModule mime_module> AddHandler cgi-script .cgi .pl .py </IfModule>

Esto causará el error.

.py NO DEBE configurarse como un script CGI


Puedes usar lo siguiente:

<Directory /home/aettool/aet/apache> <IfVersion < 2.3 > Order allow,deny Allow from all </IfVersion> <IfVersion >= 2.3> Require all granted </IfVersion> </Directory>