【问题标题】:How to setup different subdomains in Flask (using blueprints)?如何在 Flask 中设置不同的子域(使用蓝图)?
【发布时间】:2015-03-10 23:35:30
【问题描述】:

我有一个在 https://app.mydomain.com 运行的 Flask 应用程序。

蓝图如下所示:

app.register_blueprint(main)
app.register_blueprint(account, url_prefix='/account')
app.register_blueprint(users, url_prefix='/users')
app.register_blueprint(boxes, url_prefix='/boxes')
app.register_blueprint(api_1_0, url_prefix='/api/v1.0')

网址如下所示:

我想将api_1_0路由从https://app.mydomain.com/api/v1.0移动到https://api.mydomain.com,应该如何修改路由以及如何设置app.config['SERVER_NAME']

example.com(没有任何子域)完全是另一个站点,否则我将摆脱 app 子域。

所以,我希望 app 成为所有蓝图的默认子域,除了 api_1_0 应该是 api

【问题讨论】:

    标签: python flask-restful flask


    【解决方案1】:

    由于您希望 Flask 应用程序处理多个子域,您应该将 app.config['SERVER_NAME'] 设置为根域。然后将app 应用为默认子域并在api 蓝图注册中覆盖它。

    我想这样做的方法是这样的:

    app.config['SERVER_NAME'] = 'mydomain.com'
    app.url_map.default_subdomain = "app"
    app.register_blueprint(account, url_prefix='/account')
    app.register_blueprint(users, url_prefix='/users')
    app.register_blueprint(boxes, url_prefix='/boxes')
    app.register_blueprint(api_1_0, subdomain='api')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-16
      • 2012-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多