将域重定向到同一台机器上的不同端口

Ion*_*zău 1 iptables port-forwarding json

我使用以下命令重定向803000. 来自任何域的所有请求都被重定向到3000

sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000
Run Code Online (Sandbox Code Playgroud)

必须处理:一个侦听80001另一个侦听8002如何将两个域链接到两个端口?

是否可以使用如下的 JSON 配置?

[
    {
       "port": 8001,
       "domains": ["example.com", "example2.com"] 
    },
    {
       "port": 8002,
       "domains": ["domain.com", "domain2.com"] 
    }
]
Run Code Online (Sandbox Code Playgroud)

所以domain.comdomain2.com将他们的请求发送到进程侦听8002和其他两个领域的8001

Ton*_*ony 6

通常,您必须使用虚拟主机mod_proxy(用于 Apache)来设置 Web 服务器。

但是,我建议您使用反向代理(例如haproxy)来解决此问题。设置 Haproxy 以便它侦听端口 80 并使用域名上的 ACL 将您的流量定向到您的网络服务器。使用侦听 127.0.0.1:8002 和 127.0.0.1:80001 的虚拟主机设置您的网络服务器(如果 haproxy 在同一台服务器上运行)。

很简单的设置。

看看这个例子。它用于将 haproxy 放在 Docker 容器前面,但您可以调整配置以满足您的需求。