如何使用Flask为我的网站实施子域名?
文档尽管非常好,但对此并不是很清楚。 子域名不需要是动态的,我只会使用我自己选择的2或3。
我如何路线?是否有可能以正常方式测试它们? (由Flask在当地提供)
答案 0 :(得分:15)
如果您只想处理特定子域下的特定端点,则可以use the subdomain
@route
的参数:
app = Flask(__name__)
# In Flask 1.0
# app = Flask(__name__, subdomain_matching=True)
# Must add this until Flask 1.0
# Must be host:port pair or will not work
app.config["SERVER_NAME"] = "local.dev:5000"
@app.route("/")
def home():
return "Sweet home"
@app.route("/some-route")
def some_route():
return "on the default subdomain (generally, www, or unguarded)"
@app.route("/", subdomain="blog")
def blog_home():
return "Sweet blog"
@app.route("/<page>", subdomain="blog")
def blog_page(page):
return "can be dynamic: {}".format(page)
要在本地处理开发,您需要在hosts
文件中创建条目,将这些不同的域指向您的计算机:
local.dev 127.0.0.1
blog.local.dev 127.0.0.1
然后,您可以使用local.dev
和blog.local.dev
而不是localhost
来查看您的工作。