Pull to refresh

Django на серверах ValueHost

Reading time3 min
Views2.2K
Здравствуйте, сегодня мы расскажем Вам, как установить framework Django на серверах ValueHost.

image

Рассмотрим установку 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 — обращайтесь в Поддержку Онлайн из Вашей Панели управления, и мы с радостью это сделаем.
Tags:
Hubs:
-3
Comments1

Articles

Information

Website
www.valuehost.ru
Registered
Founded
Employees
31–50 employees
Location
Россия