【问题标题】:flask/werkzeug alias similar to Apache?类似于 Apache 的烧瓶/werkzeug 别名?
【发布时间】:2018-05-05 08:55:13
【问题描述】:

我有一个烧瓶应用程序,我在我的开发环境中使用 werkzeug 进行测试,但使用 Apache 和 mod_wsgi 进行部署。在我的 Apache 配置中,我有这个经典设置:

WSGIScriptAlias /foo /var/www/html/foo.wsgi

太好了,现在我的 API 的 URL 就像 www.blah.com/foo/API/0.1。但是,这使我的开发环境的 URL www.whatever.com/API/0.1 很奇怪,哈哈。

如何定义一个类似于我用 Apache 定义的“别名”,以便 werkzeug 提供的 URL 采用 www.whatever.com/foo/API/0.1 的形式?

谢谢!

【问题讨论】:

    标签: python apache flask mod-wsgi werkzeug


    【解决方案1】:

    终于找到了答案,但不容易找到。所以我在这里添加这个答案,以防有人尝试与我相同的谷歌查询。这主要基于this answer

    from flask import Blueprint
    
    bp = Blueprint("bar", __name__)
    

    现在我可以有条件地注册带有或不带有url_prefix 的蓝图。因此,如果设置了我的开发模式标志:

    app.register_blueprint(bp, url_prefix='/foo')
    

    否则,在生产中:

    app.register_blueprint(bp)
    

    然后我到处都有@app.route()@bp.route() 替换它:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-06
      • 1970-01-01
      • 2011-11-14
      • 1970-01-01
      • 1970-01-01
      • 2020-04-02
      • 2018-08-22
      • 2012-11-18
      相关资源
      最近更新 更多