Как развернуть серверную часть фляги с официантским сервером в интернете? - PullRequest
0 голосов
/ 23 ноября 2018

Я запрограммировал бэкэнд фляги и заставил его работать в моей локальной сети (Wi-Fi, Ethernet и т. Д.).Однако я не могу расширить его, чтобы внешние поиски достигли его.Код для бэкэнда выглядит так:

import os
from flask import Flask, flash, request, redirect, url_for, send_from_directory
from waitress import serve
other imports...

app = Flask(__name__)
app.secret_key = os.urandom(24)
.....
if __name__ == '__main__':
serve(app,host='0.0.0.0',port=5000)

Как мне дать серверу внешний IP-адрес?

1 Ответ

0 голосов
/ 06 декабря 2018

Если я могу сделать предложение, вы пытались использовать gevent ?Он предоставляет автономный сервер WSGI для замены встроенного параметра, поставляемого с Flask.

Использовать его очень просто:

pip install gevent

И вы можете подключиться к своему приложению, какэто:

import os
from gevent.pywsgi import WSGIServer # Imports the WSGIServer
from gevent import monkey; monkey.patch_all() 
from flask import Flask, flash, request, redirect, url_for, send_from_directory


app = Flask(__name__)
app.secret_key = os.urandom(24)


if __name__ == '__main__':
    LISTEN = ('0.0.0.0',5000)

    http_server = WSGIServer( LISTEN, app )
    http_server.serve_forever()

Gevent также поддерживает SSL

Вы можете использовать его самостоятельно или вместе с gunicorn или circusd Надеюсь, это поможет вам!

...