Apache-2.2
在多個國家/地區託管網站
我們的網站目前託管在英國,我們在 www.google.co.uk 上的搜尋引擎定位非常好。為了在美國取得同樣的成功,我們的網站必須在美國託管。
我對此有一些疑問。
1)我如何設置DNS,以便美國流量知道去更近的伺服器?
2)我們的網站還沒有經歷過大量的負載,所以目前,美國伺服器是否會將請求反向代理到我們的英國伺服器?
3)或者我們是否會設置某種腳本來同步兩台伺服器上的數據庫?
- 基於地理位置的 DNS
- 反向代理
- 你可以反向代理它。不過可能會慢一些。
- 數據庫
- 數據庫的同步取決於您託管的應用程序類型。
問題 2 和 3 在很大程度上取決於您的申請。問題1,理論上可以這樣實現:
- 為該伺服器設置美國伺服器和相應的 DNS 伺服器(單獨)。
- 為所有 DNS 伺服器提供相同的 IP 地址,包括您在英國的伺服器——這種技術被稱為Anycast (並廣泛用於 DNS) 。
- 請求您的網路或託管服務提供商通過 BGP 公佈到您的 DNS 伺服器的路由,以便您的機器可以訪問。根據您的託管設置,這裡可能會有一些無法預料的警告。
- 將每個 DNS 伺服器配置為提供最接近它的站點的 IP 地址,例如讓美國 DNS 伺服器為 US/.com 伺服器提供地址,而英國 DNS 為 UK/.co.uk 伺服器提供地址。
- 由於 Anycast,通常總是使用最近的 DNS 伺服器,因此將返回最近伺服器的 IP 地址。
進一步的考慮:
- 如果您要完全複製您的網站,這還具有將 .co.uk 域的美國訪問者指向更近的伺服器,以及將 .com 域的英國訪問者指向歐洲伺服器的優勢(假設您有一個
ServerAlias
或其他虛擬主機設置)。- 另請注意,如果您無法讓您的網路提供商為您宣布路線,這不是一個可行的解決方案。在託管託管方案中請求可能非常困難,或者需要您的託管公司提供專門的資源。
- 另一個注意事項是,Anycast 是面向連接協議的不可靠設置,但非常適合 DNS 等 UDP 流量。