flask实现子域名

什么是子域名?

  子域名,类似于xxx.douban.com的形式,如book.douban.com,music.douban.com,movie.douban.com等

用flask怎么实现子域名?

  flask在注册路由的时候,允许一个参数subdomain

  from flask import Flask

  app = Flask(__name__)

  app.config["SERVER_NAME"] = 'test.com:5000'

  # 实现子域名 xxx.test.com

  1) 静态子域名

    @app.route("/", subdomain="admin")

    def static_domain():

      return "static domain"

  在启动服务前,还需要配置DNS解析

  DNS解析,即在访问一个网址时,会将网址映射到一个对应的IP地址上,所以我们 要在本地测试我们的admin.test.com:5000也需要配置我们的DNS解析

  以管理员的身份打开C:\Windows\System32\drivers\etc下面的hosts文件,在最后加入我们希望映射的网址即可

  

  

  启动服务后,浏览器输入admin.test.com:5000,即可访问

  

  2)动态子域名 

    @app.route("/dynamic", subdomain="<subdomain>")

    def dynamic_subdomain(subdomain):

      return subdomain+" .domain"

    启动服务,在浏览器中输入admin.test.com:5000/dynamic(这里的子域名必须要是在hosts文件中配置过的,否则服务器会拒绝访问)

    

    

使用蓝图如何使用子域名?

  在创建蓝图的时候,支持传入一个参数,subdomain

  

    

    

    

  

猜你喜欢

转载自www.cnblogs.com/fiona-zhong/p/10208355.html