在不同的 URL 映射上运行多个 Python 服务器

在不同的 URL 映射上运行多个 Python 服务器

Python 允许我在任意端口上创建和运行应用程序,但如何同时处理多个这样的应用程序,以便最终用户仅通过 URL 即可区分?基本上,我想要的是:

Host        Port     Default URL              Expected URL
localhost   5000     http://localhost:5000    http://localhost.com/app1
localhost   6000     http://localhost:6000    http://localhost.com/app2
localhost   7000     http://localhost:7000    http://localhost.com/app2

我认为如果我使用 Apache2(虚拟主机,对吧?)这会很容易,但如果没有 Apache2 我该如何实现这一点?

答案1

您可以运行 nginx 反向代理。 https://www.nginx.com/resources/admin-guide/reverse-proxy/

用户转到 nginx 正在运行的任何端口,并提供 GET 位置,如 /app1 或 /app2。nginx 将解析 GET 位置,找出它应该转到哪个应用程序,并将整个请求及其标头传递给在 localhost:[your-apps-port] 上运行的相应服务

相关内容