Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 19, 2010 08:18:23

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Привязка домена

Здравствуйте!

Подскажите как правильно привязать домен, к сайту на Django ?



Офлайн

#2 Дек. 19, 2010 10:46:56

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Привязка домена

andreiru
Подскажите как правильно привязать домен, к сайту на Django ?
Так же как и к любому другому сайту.



Офлайн

#3 Дек. 19, 2010 15:27:17

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Привязка домена

Я обычно запускаю проект так:

python manage.py runserver 192.168.0.100:80
Наверное будет правильнее связать Django и Apache как описано в этой статье ?



Офлайн

#4 Дек. 19, 2010 16:37:09

del3d
От:
Зарегистрирован: 2010-03-12
Сообщения: 87
Репутация: +  0  -
Профиль   Отправить e-mail  

Привязка домена

я так понимаю, речь идет о связи ip и доменного имени.. Данный вопрос не о Django, а скорее о добавлении записи в DNS сервер



Офлайн

#5 Дек. 19, 2010 16:37:19

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Привязка домена

То что Вы написали - сервер для разработки. Его нельзя использовать в продакшине.

http://docs.djangoproject.com/en/1.2/howto/deployment/
Читать до просветления.

Офлайн

#6 Дек. 19, 2010 17:18:25

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Привязка домена

Ferroman, спасибо то что нужно!



Отредактировано (Дек. 19, 2010 17:53:03)

Офлайн

#7 Дек. 20, 2010 08:31:52

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Привязка домена

Выбрал Apache и mod_wsgi

Делаю так:

В /etc/apache2/sites-available :

<VirtualHost *:80>

ServerAdmin admin@mail.ru

ServerName test1.ru

DocumentRoot /www/django/mysite

WSGIScriptAlias / /www/django/mysite/apache.wsgi

ErrorLog /www/django/mysite/error.log
CustomLog /www/django/mysite/access.log combined

<Directory '/www/django/mysite'>
AllowOverride All
</Directory>

</VirtualHost>
В /www/django/mysite/apache.wsgi :

#!/usr/bin/python
# -*- coding: utf-8 -*-

import os
import sys

sys.path.insert(0, '/www/django/mysite')

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

path = '/usr/local/django'
if path not in sys.path:
sys.path.append(path)
В логах выдаёт:
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] mod_wsgi (pid=3220): Exception occurred processing WSGI script '/www/django/mysite/apache.wsgi'.
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] Traceback (most recent call last):
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/core/handlers/wsgi.py", line 228, in __call__
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] self.load_middleware()
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/core/handlers/base.py", line 31, in load_middleware
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] for middleware_path in settings.MIDDLEWARE_CLASSES:
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/conf/__init__.py", line 28, in __getattr__
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] self._import_settings()
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/conf/__init__.py", line 59, in _import_settings
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] self._target = Settings(settings_module)
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/conf/__init__.py", line 94, in __init__
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] raise ImportError, "Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE, e)
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] ImportError: Could not import settings 'mysite.settings' (Is it on sys.path? Does it have syntax errors?): No module named mysite.settings
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] mod_wsgi (pid=3222): Exception occurred processing WSGI script '/www/django/mysite/apache.wsgi'.
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] Traceback (most recent call last):
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/core/handlers/wsgi.py", line 228, in __call__
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] self.load_middleware()
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/core/handlers/base.py", line 31, in load_middleware
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] for middleware_path in settings.MIDDLEWARE_CLASSES:
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/conf/__init__.py", line 28, in __getattr__
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] self._import_settings()
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/conf/__init__.py", line 59, in _import_settings
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] self._target = Settings(settings_module)
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] File "/var/lib/python-support/python2.5/django/conf/__init__.py", line 94, in __init__
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] raise ImportError, "Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE, e)
[Mon Dec 20 13:27:00 2010] [error] [client 192.168.0.100] ImportError: Could not import settings 'mysite.settings' (Is it on sys.path? Does it have syntax errors?): No module named mysite.settings
Что я делаю не так ?



Отредактировано (Дек. 20, 2010 10:52:50)

Офлайн

#8 Дек. 20, 2010 10:02:30

ziro
От:
Зарегистрирован: 2009-08-13
Сообщения: 225
Репутация: +  8  -
Профиль   Отправить e-mail  

Привязка домена

Вам необходимо еще модифицировать PYTHON_PATH, чтобы питон мог найти Ваш файл с настройками. Для этого в начала wsgi-скрипт вставьте что-то типа следующего

sys.path.insert(0, '/path/to/django/app')
Только укажите такой путь, для которого import mysite.settings будет валиден. И это надо сделать до строки с импортом джанги.



Отредактировано (Дек. 20, 2010 10:03:44)

Офлайн

#9 Дек. 20, 2010 10:52:16

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Привязка домена

ziro
Добавил:

sys.path.insert(0, '/www/django/mysite')
Но ничего не изменилось



Офлайн

#10 Дек. 20, 2010 13:21:24

ziro
От:
Зарегистрирован: 2009-08-13
Сообщения: 225
Репутация: +  8  -
Профиль   Отправить e-mail  

Привязка домена

Попробуйте “/www/django”. Для проверки можете в консоле питона набрать примерно следующее

>>> import sys
>>> sys.path.insert(0, '/www/django')
>>> from mysite import settings
Если путь указали правильный - ошибок импорта быть не должно.

Альтернатива - в wsgi-скрипте использовать

 os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'



Отредактировано (Дек. 20, 2010 13:23:38)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version