Domain-Name-System
根據域將特定埠上的所有流量轉發到另一個埠
想像一下,我有 10 個不同的域。所有這些域都有一個指向單個 IP 地址的 A 記錄。在這個 IP 上託管了十種不同的服務。讓我們假設他們從埠監聽
:80
到:90
. 使用的協議的預設埠是:80
,我不能強制使用者:82
在域名後面附加一個。這就是問題所在:我想
:80
根據使用的域名在內部轉發。
domain0.com
:80
–>:80
domain1.com
:80
–>:81
domain2.com
:80
–>:82
domain3.com
:80
–>:83
- …
我搜尋了一下,發現了iptables。這就是我要找的嗎?
通常不能那樣做。當客戶端通過 TCP 和/或 UDP 連接時,伺服器沒有關於客戶端用於請求伺服器 IP 地址的域的資訊。
由於您提到埠 80,因此您可能正在談論 HTTP 流量。在這種情況下,可以進行這種區分,因為 HTTP 協議也傳輸選定的域名。您可以使用像 Apache 這樣的 HTTP 伺服器,並為每個域配置一個虛擬主機,充當反向代理並將流量轉發到正確的埠。像這樣的配置可能看起來像這樣:
<VirtualHost *:80> ServerName domain1.com ProxyPass / http://server-ip:81/ </VirtualHost>
為此,模組
proxy
需要proxy_http
被啟動。