Здравствуйте, сегодня мы расскажем Вам, как установить framework Django на серверах ValueHost.
Рассмотрим установку Django приложения на примере django CMS.
Первое, что нам необходимо сделать — это получить доступ к SSH:
Панель управления -> SSH -> Устаналиваем пароль и флаг Вкл. (либо ограничиваем по IP)
Далее, создаем базу для нашего приложения:
Панель управления -> Базы данных -> MySQL или PgSQL на выбор
Запоминаем название базы, пароль, тип, и адрес сервера базы данных.
Создаем виртуальный сервер:
Панель управления -> Веб-серверы -> Создать новый:
Приложения на сервере ->Python (mod_wsgi)
Корневая папка -> django_data
Имя Сервера -> mydomain.ru
Включить акселератор отдачи статического контента -> Вкл.
.htaccess -> Вкл.
Сохранить
Пока применяются настройки для нового сервера (это занимает не более
получаса, состояние можно посмотреть Панель управления ->
Главная), создадим приложение на сервере.
Используя любой SSH клиент, заходим на сервер:
ssh my_admin_login@mydomain.ru
Где,
my_admin_login — Ваш логин администратора
mydomain.ru — Ваш домен либо технический адрес сервера
После ввода пароля (его мы задали в самом начале), выполняем следующую
команду:
#django-admin.py startproject django_app
Где,
django_app — директория Django приложения
Копируем дистрибутив django CMS:
#cp -R /usr/local/lib/python2.6/site-packages/django_cms-2.0.2-py2.6.egg/*~/django_app
Либо скачиваем последню версию и распаковываем содержимое в
каталог ~/django_app
Копируем пример конфигурации CMS из дистрибутива:
#cp -R ~/django_app/example/*~/django_app/
Настраиваем конфигурацию, путем редактирования файла
~/django_app/settings.py:
DATABASE_ENGINE = тип базы данных: mysql либо postgresql
DATABASE_NAME = Название базы
DATABASE_NAME = Название базы
DATABASE_USER = Пароль, указанный при создании базы
DATABASE_HOST = Адрес сервера базы данных
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'cms/media/')
ADMIN_MEDIA_PREFIX = '/media_admin/'
В INSTALLED_APP комментируем строчку:
'south',
Должно получиться так:
#'south',
Сохраняем файл и из командной строки выполняем команду:
#python ~/django_app/manage.py syncdb
Отвечаем на вопросы:
You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no): yes
Username (Leave blank to use 'example'): Логин администратора
E-mail address: email администратора
Password: Пароль администратора
Password (again): Подтверждение пароля
К этому моменту настройки веб-сервера уже применились и в домашней
директории создался каталог веб-сервера django_data.
Создаем обработчик ~/django_data/index.wsgi следующего
содержания:
Делаем обработчик исполняемым:
#chmod 500 ~/django_data/index.wsgi
Сообщяем веб-серверу, что все запросы должны обрабатываться django при
помощи ~/django_data/.htaccess
Копируем медиа-контент для панели администратора:
#cp -R
/usr/local/lib/python2.6/site-packages/django/contrib/admin/media
~/django_data/media_admin
Все, CMS установлена, заходим по адресу, указанному в имени сервера и
авторизуемся с логином и паролем администратора.
Если Вам потребуется установка дополнительных модулей python — обращайтесь в Поддержку Онлайн из Вашей Панели управления, и мы с радостью это сделаем.
Рассмотрим установку Django приложения на примере django CMS.
Подготовка Веб-сервера и базы данных
Первое, что нам необходимо сделать — это получить доступ к SSH:
Панель управления -> SSH -> Устаналиваем пароль и флаг Вкл. (либо ограничиваем по IP)
Далее, создаем базу для нашего приложения:
Панель управления -> Базы данных -> MySQL или PgSQL на выбор
Запоминаем название базы, пароль, тип, и адрес сервера базы данных.
Создаем виртуальный сервер:
Панель управления -> Веб-серверы -> Создать новый:
Приложения на сервере ->Python (mod_wsgi)
Корневая папка -> django_data
Имя Сервера -> mydomain.ru
Включить акселератор отдачи статического контента -> Вкл.
.htaccess -> Вкл.
Сохранить
Установка приложения
Пока применяются настройки для нового сервера (это занимает не более
получаса, состояние можно посмотреть Панель управления ->
Главная), создадим приложение на сервере.
Используя любой SSH клиент, заходим на сервер:
ssh my_admin_login@mydomain.ru
Где,
my_admin_login — Ваш логин администратора
mydomain.ru — Ваш домен либо технический адрес сервера
После ввода пароля (его мы задали в самом начале), выполняем следующую
команду:
#django-admin.py startproject django_app
Где,
django_app — директория Django приложения
Копируем дистрибутив django CMS:
#cp -R /usr/local/lib/python2.6/site-packages/django_cms-2.0.2-py2.6.egg/*~/django_app
Либо скачиваем последню версию и распаковываем содержимое в
каталог ~/django_app
Копируем пример конфигурации CMS из дистрибутива:
#cp -R ~/django_app/example/*~/django_app/
Настраиваем конфигурацию, путем редактирования файла
~/django_app/settings.py:
DATABASE_ENGINE = тип базы данных: mysql либо postgresql
DATABASE_NAME = Название базы
DATABASE_NAME = Название базы
DATABASE_USER = Пароль, указанный при создании базы
DATABASE_HOST = Адрес сервера базы данных
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'cms/media/')
ADMIN_MEDIA_PREFIX = '/media_admin/'
В INSTALLED_APP комментируем строчку:
'south',
Должно получиться так:
#'south',
Сохраняем файл и из командной строки выполняем команду:
#python ~/django_app/manage.py syncdb
Отвечаем на вопросы:
You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no): yes
Username (Leave blank to use 'example'): Логин администратора
E-mail address: email администратора
Password: Пароль администратора
Password (again): Подтверждение пароля
К этому моменту настройки веб-сервера уже применились и в домашней
директории создался каталог веб-сервера django_data.
Создаем обработчик ~/django_data/index.wsgi следующего
содержания:
import os, sys root_path = os.path.abspath(os.path.split(__file__)[0])
sys.path.append(root_path+'/..') sys.path.append(root_path) os.environ['DJANGO_SETTINGS_MODULE'] = 'django_app.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Делаем обработчик исполняемым:
#chmod 500 ~/django_data/index.wsgi
Сообщяем веб-серверу, что все запросы должны обрабатываться django при
помощи ~/django_data/.htaccess
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.wsgi/$1 [L,QSA]
Копируем медиа-контент для панели администратора:
#cp -R
/usr/local/lib/python2.6/site-packages/django/contrib/admin/media
~/django_data/media_admin
Все, CMS установлена, заходим по адресу, указанному в имени сервера и
авторизуемся с логином и паролем администратора.
Установка дополнительных модулей
Если Вам потребуется установка дополнительных модулей python — обращайтесь в Поддержку Онлайн из Вашей Панели управления, и мы с радостью это сделаем.