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] 上运行的相应服务