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() 

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

Flask Dashboard Argon — развертывание на PythonAnywhere

Первый забег

Первое развертывание прошло успешно, и приложение работает, как и ожидалось, без ошибок:

Flask Dashboard Argon — развертывание PythonAnywhere, первый запуск.

Добавление файла 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.

Flask Dashboard Argon — развертывание PythonAnywhere, тестирование карты сайта

Ресурсы

Спасибо для чтения!

Похожие записи

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

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