Бесплатный хостинг для сайта на Django

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

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

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

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

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

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

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

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

Создайте виртуальное окружение (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 — название вашего виртуального окружения.

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

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

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

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

pip install —upgrade pip && pip install django && CFLAGS=»-std=c99″ pip install mysqlclient

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

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

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

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

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

django-admin startproject project_name

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

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

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

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

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

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

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

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

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

python project_name/manage.py collectstatic

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

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

python project_name/manage.py migrate

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

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

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

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

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

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

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

Хостинги с поддержкой Django

Beget.ru

От панели управления зависит ваше удобство в настройке хостинге\сайта.

Большинство качественных хостингов из нашего ТОПа используют удобные панели управления, поэтому рекомендуем больше внимания уделить другим параметрам при выборе.

  • Собственная
  • cPanel
  • ISP Manager
  • DirectAdmin
  • Parallels Plesk
  • «Взрослого» контента
  • Сайта-визитки
  • Блога
  • Корп. сайта
  • Интернет-магазина
  • Портала
  • Форума
  • Игр
  • Minecraft
  • CS:GO
  • GTA SAMP
  • Rust
  • Forex

Облачный хостинг — распределение нагрузки на несколько серверов, если сервер с вашим сайтом перегружен или не работает. Это гарантия того что пользователи в любом случае смогут видеть ваш сайт. Но это дорогая, более сложная опция, которую предоставляют далеко не все провайдеры.

Виртуальный хостинг — подходит для большинства проектов начального уровня с посещаемостью до 1000 человек в сутки. В таком хостинге мощность сервера делится между несколькими хостинговыми аккаунтами. Услуга проста в настройке даже для новичков.

VPS — подходит для более сложных проектов с достаточно большой нагрузкой и посещаемостью до 10000 человек в сутки. Здесь мощность сервера фиксированная для каждого виртуального сервера, при этом сложность настройки увеличивается.

Выделенный сервер — нужен для очень сложных и ресурсоемких проектов. Для вас выделяют отдельный сервер,мощность которого будете использовать только вы. Дорого и сложно настраивать.

Размещение и обслуживание вашего собственного сервера в дата-центре хостинга — это не очень популярная услуга и требуется в исключительных случаях.

  • Облачный хостинг
  • Виртуальный хостинг
  • VPS/VDS
  • Выделенный сервер
  • Размещение сервера
  • CDN

CMS — это система управления контентом сайта. Хостеры стараются для каждой из них делать отдельный тариф или упрощать установку. Но в целом это больше маркетинговые ходы, т.к. у большинства популярных CMS нет специальных требований к хостингу, а те что есть — поддерживаются на большинстве серверов.

Виртуализация — это создание виртуальной среды на физическом сервере, позволяющая запускать требуемые ПО без затрагивания процессов, совершаемых другими пользователями сервера. С её помощью ресурсы физического сервера распределяются между виртуальными (VPS/VDS). Основные виды: аппаратная (KVM), паравиртуализация, виртулизация на уровне ОС (OpenVZ).

  • OpenVZ
  • Virtuozzo
  • KVM
  • Hyper-V
  • Xen
  • VMware

Абузоустойчивый хостинг — компании, которые разрешают размещать практически любой контент, даже запрещенный (спам, варез, дорвеи, порнографические материалы). Такие компании не удаляют контент вашего веб-сайта при первой же жалобе (“абузе”).

Безлимитный хостинг — хостинг у которого отсутствуют лимиты на количество сайтов, БД и почтовых ящиков, трафик, дисковое пространство и т.д. Обычно это больше маркетинговый трюк, но можно найти что-то интересное для себя.

Безопасный хостинг — тот, где администрация постоянно обновляет ПО установленное на серверах, устанавливает базовую защиту от DDoS-атак, антивирус и файерволлы, блокирует взломанные сайты и помогает их «лечить».

Защита от DDOS — компании, которые предоставляют хостинг с защитой от DDoS-атак. Такие пакеты ощутимо дороже обычных, но они стоят своих денег, так как ваш сайт будет защищен от всех видов сетевых атак.

  • Абузоустойчивый хостинг
  • Безлимитный хостинг
  • Безопасный хостинг
  • Черный список
  • Защита от DDOS
  • Конструктор сайтов
  • Партнерские программы
  • Реселлинг хостинга

Тестовый период — предоставляется хостером бесплатно на 7-30 дней, чтобы вы могли удостовериться в его качестве.

Moneyback — период на протяжении которого хостер обязуется вернуть деньги, если вам не понравится хостинг.

  • Тестовый период
  • Moneyback
  • VPS/VDS с тестовым периодом
  • Москва
  • Санкт-Петербург
  • Регистраторы доменов
  • Домен в подарок
  • SSL-сертификаты

Настоятельно рекомендуем не покупать слишком дешевый хостинг! Как правило с ним очень много проблем: сервер иногда не работает, оборудование старое, поддержка долго отвечает или не может решить проблему, сайт хостера глючит, ошибки в регистрации, оплате и т.д.

Также мы собрали тарифы от тысяч хостеров, чтобы вы могли выбрать хостинг по конкретной цене.

  • Дешёвый хостинг
  • Дешевый VPS-хостинг
  • Цена-Качество
  • Дорогой хостинг
  • Бесплатный хостинг
  • VPS/VDS посуточно
  • WebMoney
  • Яндекс-деньги
  • Visa-MasterCard
  • PayPal
  • Терминалы QIWI
  • RBK Money
  • Банк (квитанция)
  • Криптовалюта
  • ДЦ России
  • ДЦ Украины
  • ДЦ США
  • ДЦ Нидерландов
  • ДЦ Великобритании
  • ДЦ Германии
  • ДЦ Китая

На языке программирования PHP и базах данных MySQL сейчас работает большинство сайтов. Они же поддерживаются практически всеми современными хостингами.

ASP.NET — платформа для разработки веб-приложений от Майкрософт.

ОС — операционная система, установленная на сервере хостинга. Мы рекомендуем размещать на серверах с Linux, если нет особых требований у разработчиков сайта.

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

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

Инструменты разработки сайтов постоянно совершенствуются. Расширения функционала ресурсов обычно добиваются за счет применения различных языков программирования, например того же Python. Однако он требует довольно много времени, чтобы создавать интерактивные модули с нуля, потому и становятся популярными фреймворки, содержащие массу шаблонных решений.

Что такое Django и зачем он нужен

Один из популярных фреймворков – Django. Это свободный проект, позволяющий разрабатывать ПО с возможностью полной изоляции отдельных модулей. Фактически веб-ресурсы собираются из двух и более блоков, которые редактируются независимо друг от друга. В этом фреймворке используется принцип разработки, нацеленный на уменьшение дублирования данных (DRY).

Django

Платформа Django подходит в следующих случаях:

  1. Планируется пользоваться только свободным ПО.
  2. Требуется быстро разработать сайт, внести изменения в готовый проект.
  3. Хочется сохранить совместимость с другими разработками.

Применение популярного фреймворка позволяет свободно менять исполнителя. У Django есть весьма развитое сообщество разработчиков – в нем легко найти нужную документацию или помощника в доработке готовых модулей или создании новых. Единственное ограничение платформы заключается в необходимости уместить все обрабатываемые данные в единой базе.

Если приложение становится «массивным», то приходится разбивать его на микросервисы, которые обрабатываются отдельно. Такой подход позволяет применять различные сценарии для каждого из независимых модулей. Но рассчитывать только Django не стоит, его возможностей хватит только на реализацию некоторых функций.

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

Сайт, разработанный с включением модулей фреймворка Django, будет работать только при наличии установленной платформы (на хостинге). Есть несколько вариантов ее инсталляции – автоматически (у хостинг-провайдера Timeweb фреймворк можно найти в разделе «Каталог CMS», вкладка «Прочее») или вручную. Второй способ предполагает предварительную установку виртуального окружения virtualenv.

Это инструмент для создания изолированных сред, где запускаются обособленные проекты Python. Такое решение избавляет от проблемы зависимостей и совместимости разных версий приложения между собой. Подробнее о функционале virtualenv лучше почитать в официальных документах, а сейчас речь идет лишь об инсталляции программного обеспечения.

Последовательность действий:

Скачать актуальный релиз и распаковать его в корневой каталог:

Создать виртуальное окружение с использованием нужной версии Python:

Активировать виртуальное окружение:

Инсталлировать Django при помощи команды pip:

Если проект еще не создавался, сделать это командой:

Создать файл .htaccess, который следует расположить «по умолчанию» в каталоге public_html сайта. Внести в него содержимое:

По тому же пути разместить файл index.wsgi (он также создается с нуля). Его содержимое для версии Django выше 1.7:

Значение «путь до проекта» – это полный путь до каталога с установленной платформой Django, «путь до пакетов Python» – путь до каталога, куда было установлено виртуальное окружение virtualenv. «Имя проекта» – свободное название по решению администратора. Теперь на очереди создание файла settings.py. Он располагается по пути:

В нем нужно найти строку:

И указать в ней название сайта:

Или сразу нескольких сайтов:

Отладка этого файла поможет убедиться в отсутствии ошибок. Она инициируется внесением в него строки DEBUG = True. Проверить подключение проще всего вводом в адресную строку браузера названия сайта (домена). Если все установилось корректно, пользователь увидит приветственную страницу Django.

Django на хостинге

Система готова к эксплуатации (развертыванию сайтов). Перед началом программирования стоит уточнить версию Python, которая используется на хостинге, командой python3 – version. Это снизит риски сбоев из-за несовместимости приложения с интерпретатором.

В остальном вопросов обычно не возникает или они решаются путем обращения в техническую поддержку провайдера.

Создание сайта на Python/Django: подбор хостинга

Сегодня немного забегу вперед и остановлюсь на вопросе выбора хостинга для проекта на Django/Python, т.к. это весьма важный вопрос, к которому стоит подойти с высокой долей ответственности. Делая подбор хостинга необходимо заранее учитывать особенности вашего проекта и путь его дальнейшего развития, но это вовсе не значит, что необходимо покупать дорогой вариант с запасом на будущее. Запас конечно необходим, но без лишнего фанатизма. Ведь всегда можно будет докупить мощности, т.е. перейти в более дорогой пакет обслуживания.

Выбираем VDS для Django-проекта

На мой взгляд, на начальном этапе для запуска проекта на Django в т.н. production понадобиться самый простой VDS или же виртуальный выделенный сервер. Возникает вопрос – как определить необходимую производительность такого сервера?

Выбираем хостинг для проекта на Django

Минимальные требования к ресурсам VDS на старте проекта на Django

Dokku Logo

Как развернуть проект на базе Django / Python на сервере VDS

PaaS на основе Git

При выгрузке проекта в продакшн Git используется как источник кода для передачи на сервер и его запуска. В свою очередь Dokku, при условии, что вы настроили проект верно, определяет необходимые компоненты для установки на стороне сервера, создает среду, обеспечивает работу кода и связь между компонентами проекта (такими как БД или файловое хранилище).

И так, думаю, что пока я наговорил слишком много моментов, которые могут показаться отпугивающими для новичков. Поэтому, на данном этапе предлагаю сделать перерыв и усвоить изложенное.

Оставьте комментарий