您缺少
ProxyFix()中间件组件。请参阅Flask代理设置文档。
不需要继承任何东西。只需将此中间件组件添加到您的WSGI堆栈中:
# Werkzeug 0.15 and newerfrom werkzeug.middleware.proxy_fix import ProxyFixfrom flask import Flaskapp = Flask(__name__)app.wsgi_app = ProxyFix(app.wsgi_app, x_num=0, x_proto=1)
如果您安装了Flask,也有Werkzeug,但请将版本固定为> = 0.15,以获取更新的版本
ProxyFix(Flask
1.1.0及更高版本已使用该版本)。
该组件从X-Forwarded-
Proto标头设置WSGI方案。请阅读我上面链接到的Flask文档,其中包括有关信任标头和根据特定情况自定义中间件的信息。上面,我将其配置为仅查看
X-Forwarded-Proto,但该组件也可以处理其他
X-Forwarded-*配置。
还要注意,
ProxyFix中间件的功能在Werkzeug 0.15中已经得到了很大的扩展。此外
X-Forwarded-Proto,
-For和
-Host中,
X-Forwarded-Port和
-Prefix头部也咨询过,所有接头支持多个值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)