在研究 DNS 系统主题时,我发现网站倾向于使用重定向将其不同的域名指向主域名。
例如,谷歌使用重定向到www.google.com
何时google.com
被访问:
> curl -I google.com
HTTP/1.1 301 Moved Permanently
Location: http://www.google.com/
...
据我所知,重定向会减慢速度,因为要获取重定向到的信息,信号需要到网络服务器的距离增加一倍,从而增加整体延迟。
有人告诉我,浏览器会缓存重定向信息,以便google.com
浏览器立即重定向下一个查询。但是第一个仍然必须得到服务器关于重定向的响应。
在我看来,我们可以在 DNS 级别实现相同的目标。我知道我们不能有 CNAME 记录来google.com
引导www.google.com
(因为它会将所有电子邮件user@google.com
变成user@www.google.com
)。但是我们可以在 DNS 级别使用重定向。或DNS ALIAS
。作为最后一步,我们可以使用 JavaScript将浏览器地址栏中的 url 从google.com
更改为 。www.google.com
对我而言,这将导致与使用重定向相同的结果,但会避免我们进行重定向,以便我们更快地提供结果页面。
尽管如此,使用普通重定向应该是有原因的。
那么,这是什么原因呢?使用重定向有什么好处?在 DNS 级别重定向有哪些注意事项?