我如何使用 Flask 为我的网站实现子域?
文档虽然非常好,但对此一点也不清楚。 子域不需要是动态的,我只会使用我自己选择的 2 或 3 个。
我将如何路由它们?是否可以以正常方式测试它们? (由 Flask 在本地提供)
最佳答案
如果您只想处理特定子域下的特定端点,您可以 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
来查看您的工作。
关于python - Flask 的子域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21388921/