【问题标题】:Hosting images on separate sub domains在不同的子域上托管图像
【发布时间】:2010-12-04 09:54:59
【问题描述】:

我的公司拥有大约 30 个网站,它们都共享相同的代码库并重复使用许多相同的图像。目前,所有网站的图片都托管在一个域中,然后其他所有网站都必须链接到这些图片。

即, www.example.com/images/hello.jpg

在 www.example2.com 我们有类似的东西: <img src="http://www.example.com/images/hello.jpg" />

最近有人告诉我,我应该将所有这些共享/静态图像放在一个子域中,但我看不出这样做有什么好处。我听说速度可能会略有增加,但我也听说它会使事情复杂化。有人可以详细说明吗?

【问题讨论】:

    标签: image hosting subdomain


    【解决方案1】:

    它的几个优点:

    • 单独的域可防止您域的 cookie 为每个不需要的图像请求发送。减少每个请求的带宽开销。
    • 大多数浏览器一次只会向特定域发出一定数量的 HTTP 请求,因此从第二个域提供图像和其他静态内容可能会使一次 HTTP 请求的数量翻倍。
    • 您可以使用不同的、重量更轻的网络服务器(如 nginx/lighttpd)来提供静态内容。

    缺点:

    • 管理它。
    • 两个 DNS 查找而不是一个。

    【讨论】:

    • @ceejayoz:+1 感谢您提供有趣的信息。对您来说,Web 服务器在从不同域/子域并行下载图像时可能会更快吗?
    • @Marco Demaio 我不相信 Web 服务器端会有所不同。
    【解决方案2】:

    当浏览器请求 CSS 和 Javascript 等静态文件时,它通常会限制与给定服务器/子域的连接数。将静态文件放在不同的域下允许更多的同时下载。

    如果设置正确,不同的子域可能只是您网络服务器上的一个目录。取决于你的 config-file-fu。

    【讨论】:

      【解决方案3】:

      这在几个 Stackoverflow 播客中都有介绍。

      一个问题 - 如果您提供 https 页面,用户可能会收到有关安全和不安全项目混合的警告。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-21
        • 2020-03-23
        • 2021-05-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-28
        • 2016-03-08
        相关资源
        最近更新 更多