可憐的 MIS 又來求救了...請問 Apache 有沒有轉址功能?
發表於 : 09/05/2003 3:30 pm
最近接到一個業務,幫一家小公司規劃網路。
他們有一個以 HTML + PHP + MySQL 的公司網站,以及公司的電子商務網站。
電子商務網站最近才請別人寫好,是用 ASP 寫的,放在 Windows 2K Server 上。
公司網站部分聽說是用到了一些 Linux Shell command 必須放在 RedHat 上。
(不要問我,都不是我寫的。那個電子商務簡直笑死人,XOOPS 都比它強)
看這一陣子病毒鬧這麼凶,想到要把 Windows 直接暴露在網路上簡直叫找死。
我想要用一台 RedHat Linux 裝兩張網卡架 iptables 防火牆,
並且裝上 Apache 來當公司網站的伺服器。
Windows 2K Server 則放在內部網路上,
預設閘道設定成 Linux 的內部網卡 IP。
可是問題來了,iptables 和 xinetd 都只能針對 Port mapping 來轉址,
對於 80 Port 的請求,都是丟給 Apache 負責服務,沒辦法把封包轉給 Windows。
電子商務部分改用 Port 8080 的提案被他們反對還被罵「不懂業務」
我知道用 Linux 外部網卡設定兩個真實 IP
然後配合 DNS 和 iptables DNAT 就可以達到目的。
可是現在 IP 就只有一個可用。
請問一下我有沒有辦法只用一個 IP 和一個 Port 達到轉址的目的?
例如說公司網站叫 www.exapmple.com,
電子商務網站叫 shop.example.com,
有沒有辦法讓 Apache 看到 HTTP Request 的 ServerName 是 shop.example.com
就把請求轉址到 Windows 2K Server 上去?
也就是類似 iptables DNAT 這樣的功能。
他們有一個以 HTML + PHP + MySQL 的公司網站,以及公司的電子商務網站。
電子商務網站最近才請別人寫好,是用 ASP 寫的,放在 Windows 2K Server 上。
公司網站部分聽說是用到了一些 Linux Shell command 必須放在 RedHat 上。
(不要問我,都不是我寫的。那個電子商務簡直笑死人,XOOPS 都比它強)
看這一陣子病毒鬧這麼凶,想到要把 Windows 直接暴露在網路上簡直叫找死。
我想要用一台 RedHat Linux 裝兩張網卡架 iptables 防火牆,
並且裝上 Apache 來當公司網站的伺服器。
Windows 2K Server 則放在內部網路上,
預設閘道設定成 Linux 的內部網卡 IP。
可是問題來了,iptables 和 xinetd 都只能針對 Port mapping 來轉址,
對於 80 Port 的請求,都是丟給 Apache 負責服務,沒辦法把封包轉給 Windows。
電子商務部分改用 Port 8080 的提案被他們反對還被罵「不懂業務」
我知道用 Linux 外部網卡設定兩個真實 IP
然後配合 DNS 和 iptables DNAT 就可以達到目的。
可是現在 IP 就只有一個可用。
請問一下我有沒有辦法只用一個 IP 和一個 Port 達到轉址的目的?
例如說公司網站叫 www.exapmple.com,
電子商務網站叫 shop.example.com,
有沒有辦法讓 Apache 看到 HTTP Request 的 ServerName 是 shop.example.com
就把請求轉址到 Windows 2K Server 上去?
也就是類似 iptables DNAT 這樣的功能。