Flask при первом запуске: не используйте сервер разработки в производственной среде - PullRequest
0 голосов
/ 25 июня 2018

Я установил плагин фляги в PyCharm Community Edition, и у меня просто есть этот простой код в моем приложении фляги:

from flask import Flask
app = Flask(__name__)

app.route('/')
def index():
    return '<h1>Hello!</h1>'

if __name__ == "__main__":
    app.run(debug=True)

И я получаю это сообщение:

WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead

* Restarting with stat
* Debugger is active!
* Debugger PIN: 123-456-789
* Running on http://127.0.0.1:5000/

Когда я прихожуна http://127.0.0.1:5000 он говорит: «Запрошенный URL не найден на сервере. Если вы ввели URL вручную, проверьте правильность написания и повторите попытку.»


Предыдущийверсия сообщения гласит: «Не используйте сервер разработки в производственной среде».

Ответы [ 2 ]

0 голосов
/ 26 января 2019

В зависимости от того, что вы хотите сделать.Если вы действительно хотите сделать это в работе, вы должны проверить это:

http://flask.pocoo.org/docs/dev/tutorial/deploy/

При публичном запуске, а не в разработке, вы не должны использовать встроенныйсервер разработки (колба работает).Сервер разработки предоставляется Werkzeug для удобства, но не предназначен для того, чтобы быть особенно эффективным, стабильным или безопасным.

Вместо этого используйте рабочий сервер WSGI.Например, чтобы использовать Waitress, сначала установите его в виртуальной среде:

В вашем случае вы можете попробовать вот что:

from waitress import serve

from flask import Flask

app = Flask(__name__)


@app.route('/')
def index():
    return '<h1>Hello!</h1>'


serve(app, host='0.0.0.0', port=8080)
0 голосов
/ 25 июня 2018

Если вы не сообщите серверу разработки, что он работает в режиме разработки, он будет предполагать, что вы используете его в рабочей среде, и предупредит вас об этом. Сервер разработки не предназначен для использования в производстве. Он не предназначен для того, чтобы быть особенно эффективным, стабильным или безопасным.

Включите режим разработки, установив для переменной среды FLASK_ENV значение development.

export FLASK_ENV=development
flask run

Если вы работаете в PyCharm (или, возможно, в любой другой IDE), вы можете установить переменные среды в конфигурации запуска.

Режим разработки по умолчанию включает отладчик и перегрузчик. Если они вам не нужны, передайте --no-debugger или --no-reloader команде run.

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