我是一名 .net 开发人员,即将转向 Python。我最近开始使用 Flask,并且有一些关于服务文件的快速问题。
我注意到很多教程都集中在 nginx 和 Flask 上。不过,我可以在没有 nginx 的情况下运行 Flask。我只是好奇为什么要一起使用它(nginx 和flask)。 nginx只能处理静态文件吗?
Nginx 是一个代理服务器,想象一下您的应用程序在不同语言上有多个微服务。
了解更多信息 NGINX 反向代理
在开发机器上,Flask 可以在没有网络服务器(nginx、apache 等)或应用程序容器(例如 uwsgi、gunicorn 等)的情况下运行。
当您想要处理生产服务器上的负载时,情况会有所不同。对于初学者来说,在提供静态内容方面,Python 相对非常慢,而 apache / nginx 则做得很好。
当应用程序变得足够大,可以分解为多个单独的服务或必须水平扩展时,nginx 的代理服务器功能会非常方便。
在我构建的架构中,nginx 充当 ssl 终止的入口点,应用程序的其余部分位于 VPN 和防火墙后面。
这有帮助吗?
来自 http://flask.pocoo.org/docs/1.0/deploying/ :
“虽然 Flask 的内置服务器轻量且易于使用,但它不适合生产,因为它扩展性不佳。此处记录了一些可用于在生产中正确运行 Flask 的选项。”
hii 我的烧瓶显示 TemplateNotFound jinja2.exceptions.TemplateNotFound:index.html
回溯(最近一次调用最后一次)如何解决问题