我們希望切換主機提供商。爲此,需要對與我們域相關的IP地址進行DNS更新。交換機主機提供商 - 在DNS更新傳播之前和之後將用戶重定向到新網站
內容已經過測試並在新服務器上顯示。 DNS更新已完成,但用戶無法看到新的站點,直到DNS傳播(可能是幾天)。
在舊服務器上可以做些什麼,如果它收到請求,它可以轉發/重定向到新服務器,從而消除「DNS停機時間」?
我們使用ISAPI_rewrite 3.0在IIS6上運行ASP.net 3.5。
我們希望切換主機提供商。爲此,需要對與我們域相關的IP地址進行DNS更新。交換機主機提供商 - 在DNS更新傳播之前和之後將用戶重定向到新網站
內容已經過測試並在新服務器上顯示。 DNS更新已完成,但用戶無法看到新的站點,直到DNS傳播(可能是幾天)。
在舊服務器上可以做些什麼,如果它收到請求,它可以轉發/重定向到新服務器,從而消除「DNS停機時間」?
我們使用ISAPI_rewrite 3.0在IIS6上運行ASP.net 3.5。
我們的解決方案(每達里爾的建議 - 但這是一個評論太多信息)
我們使用ISAPI_Rewrite 3.0這是URL管理一個夢幻般的,低成本的工具,所以這種解決方案是專爲該產品,但在概念上應該對其他環境有效。
DNS(用於mydomain.com)
A newsub newIP #(new record)
A existing newIP #(updated IP)
IIS配置在新的主機站點:在新的主機
#add as first rule. trap requests for new subdomain and redirect to existing
#ASSUMES that redirect to existing is now safe because DNS for existing
#was updated when newsub DNS was queried.
#otherwise this is going to be an endless loop of
#redirects between the old and new server
RewriteCond %{HTTP_HOST} ^newsub\.
RewriteRule ^(.*)$ http://existing.mydomain.com/$1 [R=302, L]
的.htaccess的
Add newsub as a hostheader on site
的.htaccess站點舊主機上的網站
#add as first rule. redirect all requests to new subdomain
RewriteCond %{HTTP_HOST} ^existing\.
RewriteRule ^(.*)$ http://newsub.mydomain.com/$1 [R=302, L]
您可以設置一個單獨的子域,將舊服務器上的用戶重定向到該域,並讓新服務器接受來自該子域的請求。新的子域名(A記錄)的推薦速度要比變化快得多。一旦完全支持DNS,您可以將該子域/ A記錄重定向到常規地址。
Darryl, 我研究了這個問題,它有很大的意義。如果它是一個從未使用過的子域名,它將永遠是一個DNS緩存未命中,迫使一個查詢到達dns根目錄(我認爲)。這也可能導致www的緩存刷新(有人可以驗證?)。 – 2009-08-10 18:36:23
嗯,我可以看到它導致DNS服務器去查找整個域的更新記錄,但我猜這不是一個通用規則。 – 2009-08-10 19:02:51