美文网首页
为什么静态资源和主页面要置于不同的域名下?

为什么静态资源和主页面要置于不同的域名下?

作者: 尤小小 | 来源:发表于2018-12-04 15:57 被阅读7次

前段时间要新启一个项目,在定域名的时候,我想一个域名就可以了吗,但是我的老大却让设置两个域名,产品觉得奇怪,配置域名的运维也很是不解?

我老大说:“浏览器有域名请求次数限制,增加一个静态资源域名可以增加浏览器的资源请求次数。”

我将老大的陈述告诉给产品和运维,虽然他们不理解,但还是接受了。

今天我在看《前端性能优化原理与实践的时候》,了解到将静态资源和主页面置为不同的域名的真正原因。

Cookie 是紧跟域名的。同一个域名下的所有请求,都会携带 Cookie。大家试想,如果我们此刻仅仅是请求一张图片或者一个 CSS 文件,我们也要携带一个 Cookie 跑来跑去(关键是 Cookie 里存储的信息我现在并不需要),这是一件多么劳民伤财的事情。Cookie 虽然小,请求却可以有很多,随着请求的叠加,这样的不必要的 Cookie 带来的开销将是无法想象的……

同一个域名下的请求会不分青红皂白地携带 Cookie,而静态资源往往并不需要 Cookie 携带什么认证信息。把静态资源和主页面置于不同的域名下,完美地避免了不必要的 Cookie 的出现!

看起来是一个不起眼的小细节,但带来的效用却是惊人的。以电商网站静态资源的流量之庞大,如果没把这个多余的 Cookie 拿下来,不仅用户体验会大打折扣,每年因性能浪费带来的经济开销也将是一个非常恐怖的数字。

为什么静态资源和主页面要置于不同的域名下?你明白了吗😄

相关文章

  • 为什么静态资源和主页面要置于不同的域名下?

    前段时间要新启一个项目,在定域名的时候,我想一个域名就可以了吗,但是我的老大却让设置两个域名,产品觉得奇怪,配置域...

  • 跨域常见解决方案

    一、设置 document.domain 原理:相同主域名下不同子域页面,通过设置document.domain让...

  • iframe postMessage实现不同源通信

    需求说明 B页面需要拿到A页面的信息,这两个页面在不同的域名下,使用localStorage不能跨域,所以采用if...

  • 高并发解决方案

    应用和静态资源分离 页面缓存 集群和分布式 静态资源集群和应用集群。应用集群要考虑session同步。负载均衡。 ...

  • 跨域

    1、什么是跨域 同一域名下的文档或脚本去访问另一个域名下的资源,叫跨域 2、跨域出现的方式 1、资源跳转:a,重定...

  • 用nginx的反向代理机制解决前端跨域问题

    什么是跨域以及产生原因 跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,或是a页面为...

  • Servlet前置知识

    动态页面和静态页面 介绍 Servlet 之前,先来了解 静态页面、动态页面 的区别: 静态页面:或称为静态资源,...

  • 前端跨域问题产生原因和解决方法

    一、产生原因 跨域是a页面想要获取b页面资源,如果a,b页面的协议、域名、端口号、子域名不同,所进行的访问都是跨域...

  • 40.Nginx的反向代理功能解决跨域问题

    1.什么情况下是跨域? 跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,或是a页面为...

  • JS跨域问题

    JS跨域问题 协议不同如http, https; 端口不同 主域相同,子域不同 主域不同 ip地址和域名浏览器不会...

网友评论

      本文标题:为什么静态资源和主页面要置于不同的域名下?

      本文链接:https://www.haomeiwen.com/subject/erdvbftx.html