Как выложить django проект на хостинг

Начинаем развертывание Django-сайта на хостинге

Предположим, что мы завершили начальную разработку сайта на тестовом веб-сервере и решили предъявить его миру, то есть, выложить на боевом веб-сервере. Часто для этого арендуется хостинг или сервер целиком (иногда его части – технология VPN) где и планируется расположить проект с файлами и БД. У каждого хостинг-провайдера используется свое оборудование и программное обеспечение, поэтому конкретные шаги по установке проекта на разных хостингах будут отличаться. Но общий принцип похож и его я буду демонстрировать на примере довольно популярного хостера – Beget (это не реклама, мои сайты расположены на других хостингах, так сложилось исторически).

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

Итак, после простой регистрации в сервисе, с которым, я думаю, вы разберетесь самостоятельно, мы выбираем один из тарифных планов (я выбрал Blog с месячным тестовым периодом, вполне достаточным, чтобы развернуть сайт и записать эти занятия). Админ-панель выглядит следующим образом:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Здесь нужно открыть вкладку FTP и активировать SSH-доступ, так как он нам в дальнейшем пригодится:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Затем, перейдем на вкладку «Управление сайтами» и здесь у нас уже должен быть тестовый домен 3-го уровня от Beget:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Обратите внимание, с этим доменом связан конкретный каталог, где предполагается хранить файлы сайта. В частности, именно в нем мы будем располагать виртуальное окружение, и устанавливать нужную версию Python и Django, а также другие необходимые зависимости (библиотеки).

Конечно, некоторые из вас могут внимательно изучить админку от Beget и увидеть раздел CMS, где, в частности, имеется и Django:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

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

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

Для взаимодействия с хостингом на уровне команд нам потребуется специальная программа SSH-клиент PuTTy. Подробно о ней написано здесь:

и используется для ОС Windows (полагаю, что большинство из вас работают именно под этой системой). Скачиваем файл с этой программой (если ее еще нет у вас, или версия устарела) и запускаем. У нас появится следующее окно:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

В поле «Host Name (or IP address)» вводим SSH-адрес хостинга и нажимаем на кнопку «Open». Появится консольное окно, где нужно ввести логин и пароль, полученный при регистрации:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

В принципе, все эти шаги будем выполнять строго по предоставленной хостером документации (кроме последнего шага). Первым делом нужно войти, в так называемый Docker, чтобы иметь возможность запускать интерпретатор Python и устанавливать необходимые пакеты. Для этого выполним команду:

и еще раз введем пароль. (Список всех команд будет приведен в отдельном файле со ссылкой на github).

а, затем, перейти в него:

Далее, по документации, для сборки интерпретатора Python потребуется библиотека ffi, которую нужно сначала скачать командой:

Источник

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

При создании сайтов разработчики сталкиваются со следующими задачами: создание форм регистрации и авторизации, внедрение панелей управления и форм обратной связи, работа с инструментами загрузки файлов и т. п. Чтобы упростить эти задачи, были созданы фреймворки.

Фреймворк — это набор компонентов, которые упрощают разработку сайтов. Он выступает каркасом: определяет структуру, набор правил и предоставляет базовые инструменты для разработки. Одним из таких фреймворков является Django.

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

Как установить Django на виртуальный хостинг

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

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

3. Во вкладке “Дополнительные возможности” отметьте галочкой разделы CGI-скрипты, Python и выберите нужную версию Python. Затем нажмите Ok:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

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

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

Вывод команды должен быть следующим:

Вместо u1234567 будет указан логин услуги вашего хостинга.

6. Узнайте доступные версии Python. Для этого выполните команду:

Список доступных версий будет выглядеть так:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

7. Создайте виртуальное окружение с произвольным именем для версии Python, которой планируете пользоваться. Обратите внимание: окружение должно совпадать с версией, которую вы выбрали в панели управления на шаге 3.

Для этого выполните команду:

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

Вместо djangoenv введите название виртуального окружения.

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

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

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

10. Перейдите в корневую директорию вашего сайта. Для этого выполните команду:

Вместо test2d.ru укажите название каталога сайта.

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

Вывод команды будет следующим:

11. Переходите к созданию нового проекта. Обратите внимание: перед созданием проекта удалите все файлы из каталога сайта, иначе Django будет работать некорректно.

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

django-admin startproject example_project

Вместо example_project укажите название проекта.

12. Откройте файл настройки проекта:

Вместо example_project введите название проекта.

13. В блоке ALLOWED_HOSTS = [] добавьте домен и его псевдонимы. И домен, и псевдонимы возьмите в одинарные кавычки, как показано на скриншоте:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

14. В блоке DATABASES укажите данные для подключения к БД:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

15. После блока STATIC_URL добавьте блок:

Блоки нужно расположить следующим образом:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Нажмите Esc, чтобы выйти в командный режим. Чтобы сохранить изменения, введите команду:

Затем нажмите Enter.

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

python example_project/manage.py collectstatic

Вместо example_project укажите название проекта.

Когда закончится создание каталога, появится сообщение:

128 static files copied to ‘/var/www/u1234567/data/www/test2d.ru/example_project/static’.

Вместо 128 может быть указано другое количество файлов.

17. Выполните миграцию в MySQL:

python example_project/manage.py migrate

Вместо example_project введите название проекта.

18. Создайте конфигурационный файл passenger_wsgi.py в корневой папке сайта. Для этого выполните команду:

19. Добавьте в конфигурационный файл текст:

from django.core.wsgi import get_wsgi_application

Нажмите Esc, чтобы выйти в командный режим. Чтобы сохранить изменения, введите команду:

Затем нажмите Enter.

Готово, теперь при переходе на сайт отображается стартовая страница Django:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

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

Если вы хотите посмотреть изменения в файлах проекта — перезапустите его. Для этого в корневой директории сайта создайте файл .restart-app:

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

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг2. Перейдите в раздел Главное — Менеджер файлов. Откройте корневую папку сайта и нажмите Создать:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг3. В поле “Тип” из выпадающего списка выберите Файл, а в поле “Имя” укажите название файла. Затем нажмите Ok:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Готово, проект перезапустится, а файл удалится автоматически.

Источник

Установка Django на виртуальном хостинге

Подготовка

Желательно иметь представление о Python 3 и Bash

Домен

Не забудьте разрешить подключение по FTP и SSH

Docker

Сначала необходимо подключиться к серверу по SSH ( инструкция от Beget )

Вместо username введите имя аккаунта у которого есть доступ к хостингу

Для перехода в виртуальное окружение Docker нужно выполнить следующую команду:

После чего возможно придётся ещё раз ввести пароль для доступа к аккаунту.

Welcome to Ubuntu 18.04 LTS (GNU/Linux 4.9.132-0-beget-acl x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage

Python

Проверить, установлены ли python3 и pip можно командами

Python 3.7.0
pip 20.1 from /home/u/user/.local/lib/python3.7/site-packages/pip (python 3.7)

Проверить где находится python3 можно командой

Установка новой версии Python

Установка Python

Подробнее про установку программ в Linux с помощью configure_make_make-install читайте здесь

/.local/include && cp x86_64-unknown-linux-gnu/include/ffi.h

/.local/include/ && cp x86_64-unknown-linux-gnu/include/ffitarget.h

/.local/include/ (docker) login@server:

/.local/bin/ или алиас для python3,

Проверим путь до python3

Этот путь нам и нужно прописать в PATH. Отбросим только /python3

Виртуальное окружение

Часто полезно пользоваться виртуальным окружением. Создавать их можно разными способами, например с помощью:

Обычно при активации виртуального окружения в терминале перед именем пользователя появляется называние окружения в круглых скобках.

Внутри контейнера вы скорее всего уже видите (docker) а название окружения может и не появиться.

Чтобы проверить перешли вы в окружение или нет выполнитеi

Либо перейдите в интерактивный режим

Выполните две команды

Они должны показать разный результат

Установка Django

Первым делом советую обновить pip

Затем непосредственно установить Django

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Запуск первого проекта в Django

Переходим в директорию в которой нужно создать проект. Например в public_html.

django-admin startproject Project_Name

После удачного выполнения этой команды создаётся директория Project_Name

NB: Если вы пишите код в PyCharm эту директорию нужно кликнуть правой кнопкой мыши и выбрать Mark Directory as → Sources Root

Внутри вложенной директории Project_Name находятся файлы

__init__.py
settings.py
urls.py
wsgi.py

WSGI расшифровывается как Web Server Gateway Interface.

Это стандарт взаимодействия между Python-программой, выполняющейся на стороне сервера, и самим веб-сервером, например Apache

Пример файла manage.py

#!/usr/bin/env python «»»Django’s command-line utility for administrative tasks.»»» import os import sys def main (): «»»Run administrative tasks.»»» os.environ.setdefault(‘DJANGO_SETTINGS_MODULE’, ‘Project_Name.settings’) try : from django.core.management import execute_from_command_line except ImportError as exc: raise ImportError( «Couldn’t import Django. Are you sure it’s installed and » «available on your PYTHONPATH environment variable? Did you » «forget to activate a virtual environment?» ) from exc execute_from_command_line(sys.argv) if __name__ == ‘__main__’: main()

passenger_wsgi.py

Нужно создать в корне сайта файл passenger_wsgi.py

cd /home/u/user/site.ru
touch passenger_wsgi.py

Для настройки passenger_wsgi.py понадобятся путь до Django и путь до проекта.

Путь до Django можно получить выполнив

Из этого пути нужно оставить

Посмотреть путь до проекта можно перейдя в родительскую директорию Project_Name (директорий Project_Name две нужна более высокого уровня) и выполнив pwd

Пример файла passenger_wsgi.py

Запуск приложения

В каждом проекте (project) обычно используется одно или несколько приложений (application)

Когда все приложения и конфигурации объединены они составляют веб-приложение.

applications + configurations = web application

Создаём первое приложение

python3 manage.py startapp first_app

Появится директория first_app в которой будут следующие файлы

settings.py

Переходим в директорию Project_Name/Project_Name

Редактируем файл settings.py

Добавляем домен, на котором Вы разворачиваете сайт в ALLOWED_HOSTS файла (из проекта) settings.py

Нужно добавить в список установленных приложений наше новое приложение first_app

INSTALLED_APPS = [ ‘django.contrib.admin’, ‘django.contrib.auth’, ‘django.contrib.contenttypes’, ‘django.contrib.sessions’, ‘django.contrib.messages’, ‘django.contrib.staticfiles’, ‘first_app’, ]

Запуск/Перезапуск сервера

Если перезапуск осуществляется с помощью скрипта выполняем (насколько я знаю, это актуально для хостингов Beget и dreamhost)

Возможно, на вашем хостинге запуск будет осуществляться с помощью runserver

Источник

Как поставить Django на сервер heroku в 2020 году. 10 шагов

Решил поделиться с вами тем, как поставить проект написаный на Python/Django на сервер heroku. Heroku — это бесплатный хостинг для тестирования своих проектов. Если вам нужно посмотреть как действует проект в боевом режиме — вперед!

1. Надо пройти регистрацию на heroku. В этом нет ничего сложного, просто вводите данные, подтверждаете на почте аккаунт, и вперед.

4. В нашей консоли прописываем команду:

После чего создаем в каталоге проекта файл .gitignore. В нем мы можем записать все файлы которые мы хотим проигнорировать при загрузке на сервер. Допустим на сервере я буду использовать базу данных MySQL, по этому файл db.sqlite3 мне не нужен.

После пишем в bush 3 команды

1-ая отвечает за добавление всех фалов в git.

2-ая за сохранение данных файлов на компьютере локально с сообщением GIT init.

5. Теперь входим в наш heroku через консоль. Пишем:

Дальше вводим сначало E-mail, нажимаем Enter. Потом пароль и опять же Enter.

Вот мы и вошли. Дальше создаем приложение, мы это будем делать через консоль так что вводим в нее следующее:

Команда создает приложение. После этой команды через пробел можно написать имя приложения. В противном случае heroku с генерирует его автоматически и выведет в консоль.

6. Дальше создаем несколько файлов, для того что бы heroku понял что мы загружаем и как:

Вместо appname пишите название своего проекта.

Дальше устанавливаем сам gunicorn для обслуживания django через wsgi:

Сразу же устанавливаем whitenoise для работы со статическими файлами:

7. Теперь переходим в settings.py и делаем следующие изменения:

Добавляем static_root если у вас его нет:

8. Настраиваем работу с базой данных. Устанавливаем утилиту для более удобной работы:

переходим опять в настройки и пишем:

9. Последний файл который нам нужен — requirements.txt, в нем будут все установленные библиотеки:

У нас создался файл со всеми пакетами. Можете записать в него различные пакеты с их версиями. Обязательно надо записать эту строчку:

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

10. Ну и финал, загружаем на сервер.

Переходим в консоль и пишем такие команды:

Если у вас не получилось с main, попробуйте:

И пошел процесс загрузки нашего проекта на heroku. Дальше вам в консоль напишет ссылку на наш проект. По ней мы будем переходить потом, а сейчас выполним все миграции:

И создадим super user-а:

Переходим по раннее полученной ссылке, и видим наш проект. Вот так за 10 шагов мы загрузили наш проект на heroku и настроили базу данных. Всем спасибо за внимание.

Источник

Публикация в Интернете!

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

До настоящего момента твой сайт был доступен только для локального просмотра, теперь же ты узнаешь, как развернуть его на удалённом сервере! Развертывание (deploy) — это процесс публикации приложения в интернете, чтобы люди могли наконец увидеть твое творение 🙂

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

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

В итоге твой код будет в трёх местах. На локальном компьютере ты будешь заниматься разработкой и тестированием. Когда результат тебя устроит, ты загрузишь свою программу на GitHub. А твой сайт будет на PythonAnywhere, и ты сможешь обновлять его, просто загружая новую версию кода с GitHub.

Примечание: если ты уже выполнила установку, незачем повторять её вновь — можешь сразу переходить к следующему разделу и начать создание собственного Git-репозитория.

Git — это «система управления версиями», используемая множеством программистов. Эта программа отслеживает изменения, происходящие с файлами, чтобы впоследствии можно было восстановить состояние кода на нужный момент времени. Это немного похоже на функцию отслеживания изменений в Microsoft Word, но куда мощнее.

Установка Git

Ты можешь загрузить Git с официального сайта git-scm.com. Ты можешь нажимать «дальше, дальше, дальше» на всех этапах установки за исключением одного: на пятом шаге, который называется «Adjusting your PATH environment» (Настройка системной переменной Path), выбери «Use Git and optional Unix tools from the Windows Command Prompt» (Запуск Git и соответствующих Unix утилит через командную строку Windows, нижняя опция). Все остальные настройки можно оставить по умолчанию. Также неплохо будет выбрать опцию «Checkout Windows-style, commit Unix-style line endings».

После окончания установки не забудь перезапустить командную строку или PowerShell.

Загрузи Git с официального сайта git-scm.com и просто следуй инструкциям по установке.

Примечание: если ты используешь OS X 10.6, 10.7 или 10.8, тебе придётся установить git отсюда: Установка Git для OS X Snow Leopard

Создаём Git-репозиторий

Git отслеживает изменения определенного набора файлов, который называется репозиторием (сокращенно «репо»). Давайте создадим такой для нашего проекта. Открой консоль и запусти эти команды в папке djangogirls :

Инициализировать git-репозиторий придется только один раз за проект (и тебе больше не придется вводить имя пользователя и адрес электронной почты).

Примечание: точка в начале имени файла имеет важное значение! Если у тебя есть проблемы с созданием таких файлов (Mac не позволит создать файл с названием, начинающимся с точки, через Finder, например), тогда используй кнопку «Сохранить как» в меню своего редактора кода, это точно поможет.

Используй команду git status перед git add или в любой другой момент, когда ты не уверена, что изменения — хорошая идея. Это убережёт тебя от таких неприятных сюрпризов, как добавление неправильных файлов. Команда git status возвращает информацию обо всех ранее неотслеживаемых/изменённых/добавленных в git файлах, а также статус ветки и многое другое. Результат должен быть похож на:

И, наконец, мы сохраним наши изменения. Переключись на консоль и набери:

Загружаем код в репозиторий GitHub

Зайди на GitHub.com и создай новую бесплатную учётную запись (если это уже сделано во время подготовки к воркшопу — здорово!). Убедись, что запомнила свой пароль (добавь его в свой менеджер паролей, если им пользуешься).

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

На следующем экране ты найдёшь URL для клонирования репозитория. Выбери вариант «HTTPS» и скопируй ссылку:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Теперь нужно связать локальный репозиторий с репозиторием на GitHub.

Напечатай у себя в консоли следующую команду (замени на имя, указанное при создании аккаунта на GitHub, но без угловых скобок):

Введи свое имя пользователя и пароль от аккаунта GitHub; ты должна увидеть что-то такое:

Твой код теперь на GitHub. Зайди на сайт и проверь! Ты найдешь его в хорошей компании: фреймворк Django, этот учебник, а также многие другие великолепные проекты с исходным кодом размещены на GitHub 🙂

Настройка блога на PythonAnywhere

Регистрация на PythonAnywhere

Примечание: возможно, ты уже завела учётную запись на PythonAnywhere ранее — если так, нет нужды повторять это вновь.

PythonAnywhere — это сервис по запуску кода на Python в облаке. Мы будем использовать его, чтобы разместить наш сайт «вживую» в интернете.

Создай аккаунт уровня «Beginner» на PythonAnywhere. Он бесплатный, так что кредитка не понадобится.

Создание API токена для PythonAnywhere

Это нужно будет сделать только один раз. Когда ты зарегистрируешься на PythonAnywhere, откроется панель управления (dashboard). На ней в правом верхнем углу будет ссылка на страницу «Account»:

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Там выбери вкладку «API token» и нажми кнопку, на которой написано «Create new API token» (создать новый API token).

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Настройка сайта на PythonAnywhere

Вернись на главную страницу PythonAnywhere, кликнув логотип. Затем запусти Bash-консоль. Нажав на кнопку bash ты запускаешь командную строку, которая находится на серверах PythonAnywhere. Эта командная строка аналогична той, что есть на твоём собственном компьютере.

Как выложить django проект на хостинг. Смотреть фото Как выложить django проект на хостинг. Смотреть картинку Как выложить django проект на хостинг. Картинка про Как выложить django проект на хостинг. Фото Как выложить django проект на хостинг

Примечание: PythonAnywhere использует Linux, так что если ты используешь Windows, то терминал и команды могут немного отличаться от того, к чему ты привыкла на своём компьютере.

Чтобы опубликовать сайт на PythonAnywhere, нужно загрузить на PythonAnywhere твой код с Github и затем настроить PythonAnywhere так, чтобы он распознал твой код и запустил твоё веб-приложение. Существуют способы сделать это «вручную», но для PythonAnywhere есть программа-помощник, которая сделает это для тебя. Давай её установим.

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

Все эти шаги автоматизированы на PythonAnywhere, но они совершенно такие же, какие надо было бы совершить с любым другим хостинговым сервисом.

Введи параметры для своего пользователя-админа. Лучше всего использовать те же самые данные, что и у тебя на локальном компьютере, чтобы избежать путаницы, если ты конечно не хочешь сделать пароль на сервере PythonAnywhere более надёжным.

Сейчас, если хочешь, посмотри на файлы на PythonAnywhere с помощью команды ls :

Ты также можешь заглянуть на страницу «Files» и посмотреть, что лежит на сервере, используя встроенный в PythonAnywhere файловый менеджер. (Со страницы «Console» ты можешь попасть на другие страницы PythonAnywhere, используя кнопку меню в правом верхнем углу. Находясь на какой-либо странице, ты можешь найти ссылки на другие вверху.)

Ты в сети!

Ура, твой сайт теперь доступен всем в интернете! Ты можешь найти ссылку на него на странице «Web» на PythonAnywhere. Этой ссылкой можно делиться с кем хочешь 🙂

Примечание Это туториал для начинающих, поэтому публикуя сайт, мы использовали несколько хаков, которые не очень хороши с точки зрения безопасности. Если ты захочешь сделать что-то на основе этого проекта или начать новый, прочитай Django deployment checklist для советов по безопасности на твоём сайте.

Советы по отладке

Если ты столкнулась с ошибкой при попытке открыть свой сайт, первое место, где нужно искать отладочную информацию — твой error log. Ты найдёшь ссылку на него на странице «Web» на PythonAnywhere. Глянь, есть ли там какие-либо сообщения об ошибках; самые новые находятся внизу.

И помни, твой тренер здесь, чтобы помочь!

Ты в сети!

Стандартная страница твоего сайта должна включать приветствие «It worked!», точно так же как было на локальном компьютере. Попробуй добавить /admin/ к концу адреса сайта, и перейдёшь к панели администратора сайта. Войди под своим именем и паролем и увидишь форму для добавления новых записей в блог.

После того, как создашь несколько записей, ты можешь вернуться к своей локальной версии приложения (а не на PythonAnywhere). С этого момента для внесения изменений тебе нужно работать в своей локальной версии. Это обычный подход в веб-программировании: изменять код локально, загружать изменения на GitHub, а затем подтягивать изменения на сервер с сайтом. Такой подход позволяет тебе работать и экспериментировать, не рискуя сломать свой сайт. Круто, правда?

Ты заслужила огромную похвалу! Развёртывание сервера — одна из самых каверзных частей веб-разработки, и нередко уходит несколько дней, прежде чем заставишь всё работать. А у нас уже есть работающий в сети веб-сайт, вот так вот!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *