在同一台服务器上使用子域名:好还是差?为什么?

我正在研究一个简单的基于HTML-CSS-JQuery的网站,并select000webhost作为免费托pipe服务提供商。

它给我足够的空间和带宽以及基于Unix的共享Apache服务器。

现在我的问题,我已经search了pipe理子域名,尤其是静态数据的优点和缺点,并得出结论认为,子是一个好主意,可以共享HTTP请求和响应的负载。

但是,在我的情况下,我只有一台服务器可用,这也是共享的?

在同一台服务器上拥有子域名还是仅仅拥有一个域名和文件夹分区?

在URL中使用多个主机名非常重要的。 主要有以下两个原因。 但今天我会说这往往不是那么重要。

原因是/曾经是:

  • 分片 (重载术语):旧版本的浏览器每个主机名只能打开2个连接。 因此,如果从www.company.com检索到所有的HTML,CSS,JS和IMG文件,那么浏览器可以随时下载至多2个文件。 在内部URL中使用多个主机名,例如http://www.company.com以及shard1.company.comshard2.company.com将加速下载。 这不再重要,因为所有现代浏览器每个主机名使用8个或更多的并行连接 。

  • Cookieless子域名:假设www.company.com为login状态和分析等设置了许多cookie,那么static-files.company.com cookie域名提供静态文件 (例如static-files.company.com性能好处static-files.company.com 。 今天仍然如此,仍然有帮助 – 但这是一个较小的优化。 cookies通常很小,传输的时间很less,但是当然这些都会加起来。

关于这个消息的经典书籍是Steve Souders的“高性能网站” 。 本书中的一些具体build议有点旧了,但它仍然是对前端性能工程最好的全面介绍。

让不同的子域服务静态文件可以改善页面加载时间,不仅是为了获得更多的带宽或负载平衡的优势,而且还特别针对浏览器如何pipe理到远程服务器的数据连接:从一个唯一的域名提供一堆文件将限制数量并行传输,因为浏览器不想重载Web服务器。

处理静态文件的更好方法应该是使用内容分发networking而不是Web服务器。

如果您想了解您的主题和相关技术的总体概述以加快页面加载速度,请点击此处查看: http : //developer.yahoo.com/performance/rules.html

拥有子域允许在每个域级别处理Cookie。 如果您的应用程序可以从中受益,那么您需要子域名。

拥有子域名也可以让你扩大规模,如果你成长和主持每个子域在不同的方式在路上,而不必在过渡期间做一些疯狂的重写。

拥有子目录是非常简单的,因为没有什么额外的configuration。 没有额外的DNSlogging,没有额外的虚拟主机等

真的,这取决于你。 把未来的增长考虑在内,并select最适合你的东西。