Всем привет,
решил я кое-что написать на python3, не будучи программистом. Точнее — написать на Flask, используя эпичную методичку с хабра.
Долго ли коротко ли, но какое-то веб-приложение у меня получилось и прекрасно работает на локалхосте на встроенной пускалке (flask run). Пускалка при старте заявляет, что она девелоперская, и в проде использовать её нельзя. Поэтому «в проде» решил использовать gunicorn.
Приложение, кстати, вот такое (server.py):
from flask import Flask
app = Flask(__name__)
from app import views
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Так вот, оно вроде бы запускается и работает, hello world отдаёт, но не более того. Все остальные адреса (типа search) возвращают 404, всех остальных @app.route как будто нет. Но если @app.route добавить сюда же в servers.py, то добавленный путь нормально работает.
Надо полагать, строчка from app import views не работает так, как мне бы этого хотелось. Нашёл похожий вопрос на СО, но строчка импорта у ТС там другая, и ответ мне не подошёл.
Запускаю так:
gunicorn -w 4 server:app
Честно говоря, после некоторого опыта с пыхом зависимость поведения программы от реализации сервера кажется дичью. Мне понятна схема, когда на сервере запускается приложение, ну а тут мне даже предлагали сервер запихнуть в само приложение, когда ковырнул было waitress. Чад и угар девопса делает мне неуютно, помогите~