Apache-2.2

基於 source IP 的 Apache 虛擬主機

  • July 15, 2018

是否可以根據IP 為不同的虛擬主機配置 Apache?(即相同的介面,相同的主機名,但兩個不同的虛擬主機,具有不同的內容,基於IP。)

這樣做的動機是為了讓我的 IP 地址可以正常訪問該站點,但其他人都可以訪問該站點。傳統的解決方案似乎是使用 mod_rewrite 將訪問者引導到同一 docroot 中的單獨頁面,但我想使用完全不同的 docroot 來代替保留頁面。

我不知道這在 Apache 級別是否可能(無論如何都沒有 mod_rewrite)。

這是另一個想法。如果您設置兩個 Apache 虛擬主機,然後使用 iptables 將訪問者透明地轉發到正確的虛擬主機會怎樣?就像是

iptables -A PREROUTING -t nat -i eth0 -p tcp -s your.ip.address -d your.server --dport 80 -j DNAT --to-destination your.actual.site:someport
iptables -A PREROUTING -t nat -i eth0 -p tcp ! -s your.ip.address -d your.server --dport 80 -j DNAT --to-destination your.holding.site:someport

或類似的東西。:)

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