Apache-2.2

如何配置 Apache Web 伺服器以重定向它收到的請求而不修改源 IP?

  • June 14, 2015

不幸的是,我不了解 Web 伺服器,但我正在嘗試幫助一位同事。我們有一個 Apache Web 伺服器設置,我們需要它重定向重新發送它獲得的請求到應用程序伺服器,同時保持源 ip 與 apache 收到它時相同。

發生的事情是:

  1. 客戶端(IP:1.1.1.1)向 Apache Web 伺服器發送請求
  2. Apache Web 伺服器 (IP: 2.2.2.2 ) 將其請求重定向到應用程序伺服器
  3. 應用程序伺服器將源 IP 視為 ( 2.2.2.2 ),這是 Apache 的!

如何配置 Apache 讓它將請求重定向到應用程序伺服器而不更改源 IP,因此在上述範例中,應用程序伺服器將接收 1.1.1.1 作為源 IP 地址。

可悲的是,使用標頭是我們最後的選擇,因為它會迫使我們在應用程序中進行大規模的更改。

如果您想保留 IP 地址,這樣您就不必進行您提到的大規模應用程序更改,您可以啟用 IP 轉發,然後在 IP 級別而不是通過代理進行流量轉發(請參閱http:// www.debuntu.org/how-to-redirecting-network-traffic-to-a-new-ip-using-iptables/例如)。

如果使用 Windows,請查看netsh interface portproxy add v4tov4(請參閱https://technet.microsoft.com/en-us/library/cc731068(v=ws.10).aspx#BKMK_1)。

您應該使用反向代理而不是網路伺服器來執行此操作,嘗試安裝 nginx(同時執行反向代理和網路伺服器)。

它將允許您完全按照您的意願行事,基本上,您無需配置文件系統路徑,而是配置網路路徑(您的應用程序伺服器)。

引用自:https://serverfault.com/questions/698268