Купить Корзина
Логотип REG.RU
  • Вход
  • Помощь
  • Хостинг
  • PHP, ASP.NET и скрипты
  • Как установить Django на хостинг

Как установить Django на хостинг

Если ваш проект написан на Django 1.9 и ниже, воспользуйтесь инструкцией Как установить Djаngо для Руthоn 2.7

Django — популярный, высокоуровневый web-фреймворк. Предназначен для web-приложений на Python, обладает большим набором готовых компонентов, которые будут полезны не только новичкам, но и профессионалам.

Важно
  • Django доступен только для панели управления ISPmanager. Ваш домен должен быть привязан к услуге хостинга. Если вы это еще не сделали, воспользуйтесь инструкцией Как привязать домен к хостингу;
  • Django не подходит для автоподдоменов. Чтобы использовать Django, используйте основной домен, либо поддомен как отдельный сайт.

Как установить Django

  1. 1.
    Войдите в панель управления хостингом.
  2. 2.

    Перейдите в раздел Сайты, выберите домен, для которого вы хотите установить Django, и нажмите Изменить:

  3. 3.

    В разделе «Дополнительные возможности» включите CGI-скрипты, Python, выберите Версию Python и нажмите Ok:

  4. 4.
    Подключитесь к хостингу по SSH.
  5. 5.

    Перейдите в каталог вашего пользователя с помощью команды: cd ~

    Убедитесь, что вы в нужном каталоге, выполнив команду: pwd

  6. 6.

    Создайте виртуальное окружение (Virtualenv) с произвольным именем. Виртуальное окружение необходимо создать для версии Python, которой вы планируете пользоваться для вашего проекта. Она должна совпадать с версией в шаге 3. Чтобы узнать доступные версии Python, выполните команду:

    ls -la /opt/python/*/bin/python

    Для создания виртуального окружения выполните команду:

    /opt/python/python-3.7.6/bin/python -m venv djangoenv

    Где:

    • python-3.7.6 — ваша версия Python,
    • djangoenv — название вашего виртуального окружения.
  7. 7.

    Активируйте ваше виртуальное окружение с помощью команды:

    source djangoenv/bin/activate

    Где djangoenv — название вашего виртуального окружения.

    Если слева от строки ввода команды появилось название вашего виртуального окружения, значит, оно активировалось:

  8. 8.

    Обновите pip, установите пакеты Django и mysqlclient с помощью команды:

    pip install --upgrade pip && pip install django && CFLAGS="-std=c99" pip install mysqlclient
  9. 9.

    Перейдите в корневой каталог вашего сайта с помощью команды:

    cd www/faq-reg.ru/

    Где faq-reg.ru — название вашего каталога.

    Убедитесь, что вы в нужном каталоге, выполнив команду:

    pwd

  10. 10.

    Важно: перед созданием проекта удалите все файлы и папки из каталога вашего сайта.

    Создайте новый проект в корневом каталоге:

    django-admin startproject project_name

    Где project_name — название вашего проекта.

  11. 11.

    Откройте настройки вашего файла командой:

    vim project_name/project_name/settings.py

    Где project_name — название вашего проекта.

    В секции ALLOWED_HOSTS = [] добавьте имя вашего домена и его псевдонимы. Обратите внимание! Домены должны быть в кавычках:

    В секции DATABASES укажите данные для подключения к MySQL:

    Где:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'имя_базы_данных',
            'USER': 'имя_пользователя_базы_данных',
            'PASSWORD': 'пароль_базы_данных',
            'HOST': 'localhost',
        }
    }

    Если у вас нет базы данных, вы можете создать её по инструкции Как создать базу данных?

    Ниже секции STATIC_URL добавьте новую секцию: STATIC_ROOT='static/'

    После внесения изменений нажмите ESC для выхода в командный режим. Для сохранения изменений и выхода введите :wq и нажмите «Enter».

  12. 12.

    Создайте каталог со статическими файлами командой:

    python project_name/manage.py collectstatic

    Где project_name — название вашего проекта.

    Совет
    Если во время выполнения команды возникла ошибка, проверьте конфигурационный файл settings.py, который вы настроили ранее.
  13. 13.

    Выполните миграцию в MySQL с помощью команды:

    python project_name/manage.py migrate

  14. 14.

    Создайте в корневом каталоге вашего сайта конфигурационный файл с именем passenger_wsgi.py и запишите в нем следующее:

    # -*- coding: utf-8 -*-
    import os, sys
    sys.path.insert(0, '/var/www/u0000006/data/www/faq-reg.ru/project_name')
    sys.path.insert(1, '/var/www/u0000006/data/djangoenv/lib/python3.7/site-packages')
    os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings'
    from django.core.wsgi import get_wsgi_application
    application = get_wsgi_application()
  15. 15.

    В строке sys.path.insert(0, '/var/www/u0000006/data/www/faq-reg.ru/project_name') измените путь к вашему проекту. Вместо u0000006 используйте логин вашей услуги хостинга: Как узнать логин хостинга. Путь к вашему проекту вы можете увидеть в панели управления:

  16. 16.

    В строке sys.path.insert(1, '/var/www/u0000006/data/djangoenv/lib/python3.7/site-packages') укажите:

    • Вместо python3.7, версию python, которую вы выбрали на шаге 3 и 6;
    • вместо u0000006, логин вашей услуги хостинга: Как узнать логин хостинга;
    • а также путь до каталога вашего виртуального окружения. Его можно увидеть в панели управления:

  17. 17.
    В строке os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings' измените project_name на название вашего проекта.
  18. 18.
    Сохраните файл passenger_wsgi.py.

Готово, по адресу вашего домена должна отобразиться стартовая страница Django.

Внимание
Если вы выполнили все шаги инструкции, но не получили желаемого результата, это может быть связано с локальными настройками. Напишите заявку в службу поддержки, наши специалисты оперативно вам помогут!

Как перезапустить проект на Django

Если вы изменили файлы проекта и хотите увидеть изменения, вам необходимо перезапустить проект. Для этого создайте файл .restart-app в корневой директории вашего сайта. После перезапуска проекта файл будет удалён автоматически.

Помогла ли вам статья?
ДаНет
раз уже помогла

Спасибо за оценку!
Как мы можем улучшить статью?

Нужна помощь?
Напишите в службу поддержки!

Рассылка REG.RU

Лайфхаки, скидки и новости об IT

Подписываясь, вы принимаете правила рассылок

Услуги
  • Стоимость услуг
  • Хостинг
  • Зарегистрировать домен
  • Конструктор и CMS
  • Создать сайт в REG.Site
  • VPS
  • Серверы и ДЦ
  • SSL-сертификат
Помощь
  • База знаний
  • Вопросы и ответы
  • Шаблоны заявлений
  • Оставить отзыв, предложение
  • Сообщить о нарушении
Партнерам
  • Партнерские программы
  • Профессионалам IT
  • Бонусная программа
  • REG.API
  • Промоматериалы
Полезное
  • Акции и скидки
  • Мероприятия
  • Юридическим лицам
  • ЭДО
  • Whois
REG.RU
  • О компании
  • Контакты и офисы
  • Новости
  • Руководство
  • Отзывы клиентов
+7 495 580-11-11

Телефон в Москве

8 800 555-34-78

Бесплатный звонок по России

  • vk
  • telegram
  • ok
  • moikrug
  • youtube
  • twitter

Нашли опечатку?
Выделите и нажмите
Ctrl+Enter

  • mir
  • sbp
  • sberbank
  • qiwi
  • yamoney
  • visa
  • mastercard
Все способы оплаты Все способы оплаты
  • REG.RU
  • © ООО «Регистратор доменных имен РЕГ.РУ»

    Правовая информация и правила пользования

  • shop.reg.ru Магазин доменов
  • statonline.ru Доменная статистика
  • reg.ru/blog Мы пишем
  • Мы используем файлы cookie. Продолжив работу с сайтом, вы соглашаетесь с Политикой обработки персональных данных и Правилами пользования сайтом.