如何在同一Web服务器和同一端口上运行flask应用程序的多个实例?
当前我的flask应用程序具有以下目录结构:
├── app
│ ├── __pycache__
│ ├── static
│ └── templates
├── instance
├── src
└── __pycache__
当应用程序开始使用flask run
时,它将在默认端口localhost:5000
上运行。
我能够创建该应用程序的副本并在两个端口5000和5001上运行,并且工作正常。
但是,我只想使用带有index.html
文件的一台服务器,其中localhost:5000/index.html
有2个链接,可重定向至app1的localhost:5000/app1/
和app2的localhost:5000/app2/
。>
这是为了避免使用额外的端口。
我目前已将应用克隆到app2,但是不知道要运行两个应用。(下面是目录结构)
├── app │ ├── __pycache__ │ ├── static │ └── templates ├── app2 │ ├── __pycache__ │ ├── static │ └── templates ├── instance ├── src └── __pycache__
我也检查过使用蓝图,但据我了解,它们打算用于不同的视图。
如何在同一Web服务器和同一端口上运行flask应用程序的多个实例?目前我的flask应用程序具有以下目录结构:├──app│├──__pycache__│├──...
您无需使用两个应用。您可以让index.html包含以下代码行
我会说您可以在不同的端口上运行2个应用程序,并使用反向代理对它们进行负载平衡。 Check out this guide。
您可以使用werkzeug中间件来执行此操作。它允许您在/app1/
和/app2/
之类的安装路径上安装多个应用程序。
您可以在werkzeug文档中阅读有关此内容的更多信息:https://werkzeug.palletsprojects.com/en/0.14.x/middlewares/