问题标签 [bare-domain]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
subdomain - 我是否应该将我的网站默认为 www.foo?
请注意 stackoverflow 的默认域是http://stackoverflow.com,如果您尝试转到http://www.stackoverflow.com它会将您弹回http://stackoverflow.com?
这是什么原因?不是技术原因(如 http 代码等),而是网站所有者为什么要这样做?
我知道这纯粹是美学的,我总是有 www 和没有的主机标题,但是有理由将用户反弹到单个域,是否有子标题?
更新 1
没有子域称为裸域。谢谢窥视!从来不知道它有一个术语:) 更新 2
感谢您到目前为止的回答 - 请注意,我了解www.domain.com可以指向 domain.com。这不是关于我是否应该提供两者或其中一个/或的问题,它是在询问为什么某些站点默认为裸域而不是 www 子域,反之亦然。干杯。
杰夫阿特伍德实际上已经解释了为什么他在这里和这里选择裸域。(向乔纳斯·佩格福克致意:)
Jeff 的帖子(以及该线程中的其他帖子)还讨论了带有 cookie 和静态图像的裸域的问题。基本上,如果您在裸域中打开了 cookie,那么所有子域也会被强制执行。解决方案是购买另一个域,正如Yahoo Perf 团队在此处发布的那样。
dns - 使用“www”的优点/缺点是什么?
复制:
老实说,我不知道“ http://example.com ”和“ http://www.example.com ”之间的区别是什么。
我通常总是使用较短的版本,只是为了长度而没有“www”。但我知道(认为)当用户在交替使用的版本时尝试访问站点时可能会出现 cookie 冲突。所以在我所有的网站上,我只是将“ http://www.foo.com/bar ”重定向到“ http://foo.com/bar ”。但是关于使用“www”有什么要说的吗?
amazon-web-services - AWS CloudFront 背后的根域
根据这篇亚马逊的文章,我试图让整个 WordPress 网站在 AWS CloudFront 后面工作。不仅是静态文件,还有整个网站(可以通过设置适当的缓存行为来完成)。但是,如果您使用裸域(example.com
, without www
),这似乎是不可能的。
也就是说,如果 CloudFront 分配的来源是,并且如果您在同一分配中example.com
放置 CNAME, CloudFront 将偶尔产生 403 错误。example.com
经过一番挖掘,我发现这是预期的行为,因为在这种设置中,原点和 CNAME 值是相同的,CloudFront 会自行寻找原点并产生错误。
那么如何在使用裸域的同时使用 CloudFront 作为代理呢?
更新:
我已经实施了origin.example.com
评论中建议的解决方案。我遇到了一个错误,但现在它可以工作了。
- CF 分布的原点是
origin.example.com
。 - CF 分布中的 CNAME 是
example.com
. - 在CF 分发的缓存行为
Host
设置中,标头被列入白名单。 - 在 DNS
origin.example.com
中,使用 A 记录指向服务器的 IP。 - 在 DNS
example.com
中,指向带有 ALIAS-A 记录的 CF 分布。
我对这种解决方法的唯一不满是,通过这种方式可以在网络上发现源服务器的 IP 地址。脚本小子可能会意外访问origin.example.com
,并且服务器的真实 IP 地址是公开的,因此您很容易受到 DDoS 攻击。代理的众多好处之一是您可以隐藏真实服务器的 IP 地址。
我目前使用 Cloudflare 作为代理主要是因为这个原因。过去我遭受了大规模的 DDoS 攻击,并且我的服务器的 IP 地址被主机路由为空,所以我不得不迅速躲在 Cloudflare 后面并更改服务器的静态 IP。从那以后就没有头疼了。我想切换到 CloduFront,但使用裸域似乎不可行。