Flask Dashboard Argon — развертывание на PythonAnywhere
Привет Кодер,
Я пишу эту статью, основываясь на своем первом опыте развертывания приложения на платформе PythonAnywhere. До сих пор я использовал свой собственный VPS для запуска приложений Flask. Вот что я узнал.
Особенности аккаунта
PythonAnywhere предлагает бесплатный план, иногда довольно ограниченный, но в целом подходящий для учебного или демонстрационного проекта (как этот). Используя бесплатный план, вы получите:
- Две консоли. я выбрал
bash
а такжеpython 3.6
для подготовки среды приложения и установки зависимостей. - Сертификат HTTPS, подписанный COMODO
- перенаправление с HTTP на HTTPS
Настройте приложение
По умолчанию платформа создает начальный стартер приложения. __flask_app.py шаблон. Примечание: Этот файл следует отредактировать или заменить на собственный загрузчик. Поскольку мое приложение опубликовано на Github, первым шагом было клонирование исходников, установка зависимостей и создание базы данных.
$ git clone
$ pip install -r requirements.txt
$ flask shell
$ >>> from app import db
$ >>> db.create_all()
На этом этапе приложение имеет запущенную и работающую среду и созданную базу данных. Чтобы активировать развертывание, нам нужно вручную запустить развертывание:
Первый забег
Первое развертывание прошло успешно, и приложение работает, как и ожидалось, без ошибок:
Добавление файла sitemap.xml
Чтобы включить индексацию Google, в поддомен необходимо добавить несколько файлов:
- карта сайта.xml
- файл проверки гугл
Чтобы решить эту проблему, я обновил views.py (определения маршрутизации приложений), чтобы обрабатывать запрос карты сайта:
import os
from flask import send_from_directory
# handle the new route
@app.route('/sitemap.xml')
def sitemap():
return send_from_directory(os.path.join(app.root_path, 'static'), 'sitemap.xml')
Этот дескриптор довольно прост, Flask вернет содержимое sitemap.xml, сохраненное в корне статического каталога. app / static / sitemap.xml
.
Ресурсы
Спасибо для чтения!