等等,为什么:Heroku 不希望你裸体
有些网站竟然是裸体的😱
我们需要的不只是“A”级唱片。
大型网站需要大型集群
A 变成 Cname
CNAME 是个保守派
哇,哇,哇,但是DEV是裸体的
等等,开发者应该更改吗?
www.这是一个子域名。我花了很长时间才意识到这一点。
Reddit 切换到新的用户体验界面时,他们创建了一个按钮,如果你真的想 old.reddit.com回滚到之前的版本,可以使用这个按钮。
一个理智且可用的体验那台老旧的机器。
很长一段时间,我都以为它坏了。我会打开地址栏,在 `<head>` 和 ` www</head>`之间reddit.com输入 `<body>`,.old这样就会出现:
https://www.old.reddit.com
那会导致我的浏览器崩溃,并出现 SSL 错误:
我脑海中的形象www并不是像old.或那样的子域名blog.,而是“最初那些垃圾的一部分”。
每个网站都有www吧?就像https://这样之类的,对吧?
有些网站竟然是裸体的😱
如果一个域名没有子域名(例如:)dev.to,我们称其为裸域名。
很多网站选择以“裸体”示人,原因和我搞不清楚如何访问它们的原因一样。
更好的老版Reddit:www很奇怪。
大多数用户不了解 www 的工作原理,也不知道它存在的意义。如今,浏览器会自动补全甚至隐藏 www。许多使用 www 的网站都会将裸域名重定向到带 www 的版本,所以大多数人都会忘记它的存在。
从用户的角度来看,www 感觉就像是 Web 1.0 时代的爵士乐,充满了炫目的 GIF 动画和点击计数器。
我们需要的不只是“A”级唱片。
如果你读过我的上一篇文章,你就会知道域名是通过资源记录进行管理的。
当我们设置网站时,有两种常见的网站可以选择使用:A记录和CNAME记录。
通过 AA记录,我们可以为域名的“根”(Apex)或根服务器指定一个硬编码的 IP 地址。例如dev.to(截至撰写本文时),域名的 A 记录如下所示:
dev.to. 299 IN A 151.101.2.217
dev.to. 299 IN A 151.101.194.217
dev.to. 299 IN A 151.101.66.217
dev.to. 299 IN A 151.101.130.217
大型网站需要大型集群
在你最爱的猫咪图片网站的背后,一个奇迹正在发生。一台台旋转的计算机正在接收你的网络搜索信息。计算机以极低的成本频繁地启动和停止。哔哔啵啵。世界照常运转。
大多数“大型”网站都运行在多台彼此独立工作的计算机上。如果一个网站突然获得巨大的流量(例如Segment在板球比赛期间的流量),系统会自动启动新的计算机来处理负载。
这些计算机需要各自的 IP 地址,这样我们才能开始共享流量。许多托管云服务提供商,例如 Heroku,会为您完成所有这些工作。
你把代码给他们,他们监控你的流量,然后用3D打印机打印一台预装了Heroku系统的MacBook,贴上Heroku的标签来应对流量高峰。大概是这样;我也不太清楚,我不是专家。
A 变成 Cname
您可以向您的域名添加大量 A 记录来支持多个不同的服务器,但归根结底,A 记录无法支持动态 IP。
你不能直接添加一个新的IP地址就指望它能正常工作。DNS完全生效可能需要长达24小时!
等到你的网站能够向全世界介绍你的新机器时,你的销售高峰期已经过去了。
相反,我们可以CNAME在这里使用一条记录。CNAME 记录很特殊,因为它们不需要指向 IP 地址,它们可以指向另一个域:
app.segment.com. 252 IN CNAME segment.com.
这样一来,我们就可以将新IP地址的问题转嫁给主机提供商(例如Heroku)。事实上,Heroku的文档中正是这样建议的。
CNAME 是个保守派
根据 DNS 规范,你不能在裸域名上使用 CNAME 记录。
所以我们需要用到我们的✨子域名✨。解决这个问题最常用的子域名是什么?
哇,哇,哇,但是DEV是裸体的
我知道,这听起来很吓人。不过,这可能并不是什么大问题。开发人员主要发布的是静态内容,而且是通过 CDN 进行的。
我们之前看到的那些151.101.x.xIP地址?它们是Fastly的IP地址。我猜这四个IP地址都是任播IP地址。这是像Fastly这样的CDN服务提供的一种变通方案,但根据Fastly的文档,它比直接使用CNAME记录www域名更昂贵,性能也更差。
等等,开发者应该更改吗?
可能不行。现在更改域名可能会引发一系列问题。此外,开发人员可能还应该考虑 URL 的可用性。
计算机速度会随着时间推移而加快,但易用性,易用性,却始终不变。
但是,在搭建网站时,您应该仔细考虑这一点www。否则,将来可能会出现很多问题。


