遇到的狀況為公司的網站換廠商,現存有舊的網站跟新的網站,
且公司內部有架DNS伺服器,內部電腦都查詢這台DNS伺服器。
假設網站地址是www.ABC.com.tw ,已經設定好新網站的DNS對應了。
但又想能看到舊網站,我以為在設定一個別名去對應舊網站地址的IP就好,但結果是不行的,似乎一定要www的名稱去對應才能連到。請問有甚麼方法能達成嗎?
還是說這需要舊網站廠商那邊要配合設定才行?
現在DNS伺服器上的設定是
名稱 類型 資料
www 主機(A) 新網站地址IP
test 主機(A) 舊網站地址IP --這條沒有作用
一個 IP 不一定只會對應一個網站. 雖然您知道 test.aaa.com 的 IP, 但是那個 IP 上面, 可能有數百個網站同時對外提供服務.(只用一個 IP)
網站代管商, 通常會使用 Named Virtual Hosting 的技術, 讓一個 IP 可以同時服務多個 domain 名稱的網站. 所以他的主機可以設定成:
www.aaa.com ip=1.2.3.4
www.bbb.com ip=1.2.3.4
www.ccc.com ip=1.2.3.4
www.ddd.com ip=1.2.3.4
www.eee.com ip=1.2.3.4
你平常在公司裡面自己架設網站, 通常不會啟動這個技術, 因為公司內的網站數量很少, 公司的 IP 也足夠你分配給每個網站擁有自己獨立的 IP, 所以不需要用到**《多網站共用一個 IP》(Named Virtual Hosting)** 這個技術.
可是代管商手上要管上千上萬個網站, 如果每個網站都給一個專用的 IP, 會非常的浪費 IP 資源, 所以才會有上面利用單一 IP 共享多網域的技術出現.
但是這樣做的話, 因為只有一個 IP, Apache/IIS web server 要如何分辨進來的用戶, 到底是要看哪一個網站? 關鍵就在於必須事先設定好網站的 Name binding.
例如: 把 www.aaa.com 這個名稱, 和 IP 1.2.3.4, 以及資料夾 /home/aaa 全部 bind 在一起, 這樣用戶端連線的時候, Web Server 一但看到瀏覽器送進來 www.aaa.com 這個 HTTP Header, 就知道該去 /home/aaa 拿資料, 不會錯跑去把 /home/bbb 的資料拿出來丟給 aaa 的用戶瀏覽器.
所以, 你的問題在於:
雖然你知道 IP, 但是代管商以前已經將該 IP bind 給 www.aaa.com 了, 縱使你自己在 DNS 上面, 重新將 test 的 IP 指定給他, 但是當瀏覽器送出 test.aaa.com 的名稱時, 由於代管商那邊沒有設定這個名稱的 binding, 所以 web server 不知道該如何處理 test.aaa.com 這個網域?
你必須請代管商那邊協助處理這個問題, 就告訴他們說: 你想要用 test.aaa.com 的名稱去連舊的網站, 它們應該可幫忙把 binding 名稱改掉. 當然, 前提是你還跟舊代管商維持良好的商業關係; 有的公司換網站之後也跟舊廠商撕破臉, 這樣舊廠商也沒有那個意願再繼續提供你變更設定的服務.
1.請先上TWNIC (www.twnic.net.tw)查詢貴公司域名的管理資訊.(先確認dns主機是不是自已管理? =>不是時,就要到域名註冊單位去改設定)
2.www 對映新主機的ip
test 對映舊主機的ip
=>這是對的.
但是 SOA 的序號請得+1 (至少要+1)
3.靜待DNS SERVER 資料更新.(用NSLOOKUP 指示主機,多查幾次就會看到資訊是否更新了.一般標準是24小時後才會完全更新)