Найти - Пользователи
Полная версия: Ошибка client denied by server configuration [Django+wsgi+apache+ISPConfig]
Начало » Django » Ошибка client denied by server configuration [Django+wsgi+apache+ISPConfig]
1
n01se
В учебных целях пытаюсь запустить Django на домашнем сервере. Мучаюсь долго и перепробовал много, но в силу того, что действую сугубо по инструкциям и без малейшего понимания “как, зачем, и почему”, то ничего не получается. В общем на данном этапе имею домен добавленный через ISPConfig, в Apache автоматически создался /etc/apache2/sites-available/mydomain.vhost Его содержание:
<Directory /var/www/mydomain.com>
    AllowOverride None
    Order Deny,Allow
    Deny from all
</Directory>
<VirtualHost *:80>
    DocumentRoot /var/www/mydomain.com/web
    ServerName mydomain.com
    ServerAlias www.mydomain.com
    ServerAdmin webmaster@mydomain.com
    ErrorLog /var/log/ispconfig/httpd/mydomain.com/error.log
    Alias /error/ "/var/www/mydomain.com/web/error/"
    WSGIScriptAlias / /home/dproject/mydomain/mydomain/wsgi.py
</VirtualHost>

Проект был создан командой django-admin.py startproject mydomain в директории /home/dproject/ создались еще две вложенные одна в другую директории /home/dproject/mydomain/mydomain почему две мне не ясно.
Теперь содержание /home/dproject/mydomain/mydomain/wsgi.py Cначала я его оставлял по дефолту, потому пытался что-то изменять по инструкциям из инета, опять таки экспериментально. Показываю уже измененный, поскольку в ходи изменений ошибка в логах оставалась та же.

                                                       
This module contains the WSGI application used by Django's development server
and any production WSGI deployments. It should expose a module-level variable
named ``application``. Django's ``runserver`` and ``runfcgi`` commands discover
this application via the ``WSGI_APPLICATION`` setting.
Usually you will have the standard Django WSGI application here, but it also
might make sense to replace the whole Django WSGI application with a custom one
that later delegates to the Django one. For example, you could introduce WSGI
middleware here, or combine a Django application with an application of another
framework.
"""
import os
sys.path.append('/usr/local/lib/python2.6/dist-packages/django/')
sys.path.append('/home/dproject/mydomain/mydomain/')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mydomain.settings")
# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
# Apply WSGI middleware here.
# from helloworld.wsgi import HelloWorldApplication
# application = HelloWorldApplication(application)

В логах я получаю:
client denied by server configuration: /home/dproject/mydomain/mydomain/wsgi.py

А в браузере:
Forbidden
You don't have permission to access / on this server.

Что я делаю не так?

З.Ы. сайты на PHP работают без проблем.
fata1ex
Google
client denied by server configuration wsgi
n01se
fata1ex
Остроумно.

Проблема была в следующем:
В конфиге апача необходимо было дать права на путь к wsgi файлу проекта. В моем случае выглядит это так

<Directory /var/www/mysite.ua>
    Order Allow,Deny
    Allow from all
</Directory>
<VirtualHost *:80>
    DocumentRoot /var/www/mysite.ua/web
    ServerName mysite.ua
    ServerAlias www.mysite.ua
    ServerAdmin webmaster@mysite.ua
    ErrorLog /var/log/ispconfig/httpd/mysite.ua/error.log
    Alias /error/ "/var/www/mysite.ua/web/error/"
    WSGIScriptAlias / /home/dproject/mysite/mysite/wsgi.py
<Directory /home/dproject/mysite/mysite>
    Order allow,deny
    Allow from all
</Directory>
</VirtualHost>

Теперь все вкусно.
fata1ex
Причем тут остроумие? Ответ на ваш вопрос давался на первой же странице выдачи поисковика. Практически по всем ссылкам.
mihail384598
fata1ex
Причем тут остроумие? Ответ на ваш вопрос давался на первой же странице выдачи поисковика. Практически по всем ссылкам.
По первой ссылке из поисковика попал на этот сайт, в эту тему, в этот вопрос.
Вот зачем надо было отправлять обратно в поиск??? Вы недостойны звания форумчанин.

Спасибо автору темы за то, что разместил ответ на собственный вопрос.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB