Раздел помощи SpaceWeb

Установка Django

Для установки и создания проекта на фреймворке Django версии, отличной от серверной, потребуется выполнить действия, описанные ниже. Установка Django осуществляется посредством протокола SSH:

1. Для установки необходимо воспользоваться утилитой virtualenv. Создать и активировать виртуальное окружение для Вашей версии фреймворка Django можно в каталоге ".djangovenv":

username@vh200 ~ $ virtualenv .djangovenv
username@vh200 ~ $ source .djangovenv/bin/activate


2. Далее необходимо установить требуемую версию фреймворка в виртуальном окружении (в данном случае выбрана версия Django 1.7.1):

username@vh200 ~ $ pip install django==1.7.1

3. В следующем шаге необходимо перейти в каталог сайта, где будет расположен сам проект. В качестве примера выбран каталог "~/site1" на который направлен домен:

username@vh200 ~ $ cd ~/site1

4. После этого требуется создать проект Django и деактивировать виртуальное окружение:

username@vh200 ~ $ django-admin.py startproject 'SWeb_DjangoSite' && deactivate

При создании возможно заменить имя проекта "SWeb_DjangoSite" на нужное.

5. Необходимо убедитьcя, что каталог с проектом был создан и переместить его содержимое в каталог "public_html".

Проще всего это сделать удалив существующий каталог "public_html" и переименовав каталог с самим проектом:

username@vh200 ~/site1 $ rm -rf public_html/
username@vh200 ~/site1 $ mv SWeb_DjangoSite/ public_html

Далее необходимо перейти в каталог:

username@vh200 ~/site1 $ cd public_html/

6. Далее требуется открыть файл "wsgi.py" в подкаталоге с именем проекта с помощью текстового редактора и указать полные пути к установленному фреймворку, проекту и виртуальному окружению.

Полный путь к текущему каталогу можно узнать, выполнив команду "pwd":

username@vh200 ~/site1/public_html $ pwd
/home/u/username/site1/public_html

В данном случае содержимое файла следующее:

# -*- coding: utf-8 -*-

import os,sys

#путь к проекту
sys.path.append('/home/u/username/site1/public_html')
#путь к фреймворку
sys.path.append('/home/u/username/site1')
#путь к виртуальному окружению
sys.path.append('/home/u/username/.djangovenv/lib64/python2.7/site-packages/')
os.environ["DJANGO_SETTINGS_MODULE"] = "ИМЯ_ПРОЕКТА.settings"

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

Текст "ИМЯ_ПРОЕКТА" необходимо изменить на имя созданного проекта, в нашем случае это SWeb_DjangoSite.

7. В каталоге сайта создать файл .htaccess с указанием полного пути к файлу "wsgi.py".
В данном случае содержимое файла "~/site1/public_html/.htaccess" следующее:

AddDefaultCharset utf-8
AddHandler wsgi-script .py
RewriteEngine On
RewriteCond %{{REQUEST_FILENAME}} !-f
RewriteRule ^(.*)$ /ИМЯ_ПРОЕКТА/wsgi.py/$1 [QSA,L]

Текст "ИМЯ_ПРОЕКТА" также необходимо изменить на имя созданного проекта.

8. В панели управления хостинга в разделе «Сайты» необходимо убедиться, что для домена выбрана версия Apache 2.2 + mod_passenger + mod_wsgi (wp).

   Модуль mod_wsgi использует python 2.7.