如何强制来自美国的用户去美国服务器和来自英国的访问者去英国服务器

Luk*_*uka 26 networking

如果我有一个域,其中包含来自美国和欧洲的访问者,并且还有 2 台服务器,一台在美国,一台在英国,我如何强制来自美国的用户访问美国服务器而来自英国的访问者访问英国服务器为了减少访客的ping?

首先,这可能吗?为什么像谷歌这样的公司在每个国家都有不同的域名?

Tom*_*Tom 22

为什么像谷歌这样的公司在每个国家都有不同的域名?

因为它可以更轻松地为每个国家/地区提供单独的内容。内容应该是静态的 - 因此,如果您希望将英语和西班牙语页面编入索引,则它们必须具有单独的 url。一种方式是example.com/en——另一种方式是en.example.com。后者扩展得更好。

首先,这可能吗?

不适合你。您需要一个支持任播路由的提供者。

要自己完成,您需要自己的国际路由 IP 地址 - 这对于普通用户来说是不可能的,因为分配的最小块超过 4000 个地址(您必须使用)并且成本很高。

如果你得到一个,你将获得作为 AS(自治系统)的路由,并且只发布去往最近服务器的路由。

所以,不适合你。但一些主机可能支持它。

CDN 做到了 - 因此您绝对可以将静态内容移至内容交付网络。

可以做的是国家前缀,然后从主域重定向到它们。

  • 一步步?第 1 步:聘请一位这样做的专业人士。第二步:按照他的指示去做。 (2认同)

msc*_*ett 13

+1 将任播路由视为“真正的解决方案”。

一个更简单的替代方法是为每个大陆提供不同的 DNS 记录。亚马逊将此作为基于延迟的路由出售,但我认为其他大型 DNS 提供商也提供类似的工具。


小智 11

有些人提到 CDN 作为解决方案。你真的不需要那个。您所需要的只是让域的权威 DNS 服务器根据给定用户的 DNS 请求来自何处(以及可能的当前负载)为给定用户选择最佳服务器。例如,Akamai 虽然也是最大的 CDN,但提供一种名为Global Traffic Management的产品,该产品与其 CDN 产品完全分开,后者提供这种服务(收费)。它通过成为您管理的各个域的权威 DNS 服务器来实现这一点,然后对于传入的 DNS 请求,它然后分发您的 Web 服务器的 IP 地址,正确考虑负载和位置。

如果您的服务器无法处理您的负载(并且您不想购买和管理更多负载),那么您就需要 CDN,但这听起来不像是您的问题。


Hal*_*aar 8

您可以使用任播路由。例如,Google 拥有 8.8.8.8 之类的 DNS 服务器,根据您所在的位置,它们是不同的服务器。

您还可以为静态数据使用内容交付网络。

每个国家/地区的不同域为您提供了其他优势,但当然,如果您的所有访问者都使用一个域,这对您没有帮助。