js和css为什么要放在二级域名下?

html-css030

js和css为什么要放在二级域名下?,第1张

这是一种动静分离的处理方法:将CSS,JS,jpg,WMV等静态文件存储在专用静态文件服务器上面,然后用二级域名解析到这个服务器,比如 img.domain.com 用于存放图片数据,这样做的好处就是实现动静分离,主站服务器只用于处理动态数据,二级域名的静态文件服务器用于提供静态文件展示,这样做能大幅度提高站点的负载性能,实现网站加速。

而且,静态文件服务器可以借助CDN服务器实现多节点访问,可以智能判断当前访问的IP地点,然后调用离该区域最近的静态文件展示给该用户,达到加速的目的。

说的有点通俗,建议网上查询下有关CDN的资料,比如七牛云存储等,希望对你有帮助。

css里面没有这个功能,但是html本身就有一个标签可以实现你的要求——<base>

以下是base标签的简介:

<base>标签为页面上的所有链接规定默认地址或默认目标。

通常情况下,浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL 中的空白。使用 <base>标签可以改变这一点。浏览器随后将不再使用当前文档的 URL,而使用指定的基本 URL 来解析所有的相对 URL。这其中包括 <a>、<img>、<link>、<form>标签中的 URL。

给你一段代码测试看看效果,

<html>

<head>

<base href="http://www.baidu.com/" />

</head>

<body>

<a href="hahhaha" >11</a>

<a href="hohoho" >22</a>

<img src="logo/logo.gif" >

</body>

</html>

对于Web服务器来说,不管是Apache、IIS还是其他容器,图片是最消耗资源的,于是我们有必要将图片与页面进行分离,这是基本上大型网站都会采用的策略,他们都有独立的图片服务器,甚至很多台图片服务器。这样的架构可以降低提供页面访问请求的服务器系统压力,并且可以保证系统不会因为图片问题而崩溃,在应用服务器和图片服务器上,可以进行不同的配置优化,比如apache在配置ContentType的时候可以尽量少支持,尽可能少的LoadModule,保证更高的系统消耗和执行效率。