gpt4 book ai didi

python - 为单个路由绕过 Flask 的 SERVER_NAME

转载 作者:太空狗 更新时间:2023-10-30 02:42:09 26 4
gpt4 key购买 nike

我正在开发一个 Flask 应用程序,它在不同的子域下有许多路由。它使用 SERVER_NAME 设置并在不同的蓝图上设置子域以根据子域进行初始路由。

我正在尝试配置绕过主机现在匹配 SERVER_NAME 的要求的路由,但我无法弄清楚。是否可以在保持 SERVER_NAME 设置的同时执行此操作?

即我希望即使 SERVER_NAME="mydomain.com" 并且请求是针对 http://localhost:80/my/special/route/ 也可以访问特定路由

最佳答案

任何路由都只是Werkzeug's Rule的扩展/实现.因此,只需为文档设置 subdomain=None,请参阅:FLASK Route .

在您的代码库之外和像 nginx 这样的基础设施中进行所有主机名匹配是一件非常好的事情。使您可以灵活地拥有不同的开发和测试环境等,然后您可以将主机名作为 header 转发,您可以以自定义方式提取该 header 。 Digital Ocean给出了一个非常好的介绍,并且有一个很好的问题展示了如何做到这一点:nginx subdomain and domain rewrite w proxy pass

此策略的一大优点是您无需将应用程序绑定(bind)到端口 80(以 root 用户身份),这带来了极大的安全优势,而且不用担心 SERVER_NAME 的实现,这还有很多工作要做想要的。请参阅:Why flask can suck.

关于python - 为单个路由绕过 Flask 的 SERVER_NAME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37473272/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com