问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

CDN工作原理详解:从基础概念到防盗链机制

创作时间:
作者:
@小白创作中心

CDN工作原理详解:从基础概念到防盗链机制

引用
CSDN
1.
https://blog.csdn.net/LHFFFFF/article/details/140497097

CDN(内容分发网络)是一种用于加速静态资源访问的技术。它通过将资源分发到全球各地的节点,实现用户就近访问,从而提升响应速度并减轻服务器压力。本文将详细介绍CDN的工作原理及其防盗链机制。

什么是 CDN ?

CDN 全称是 Content Delivery Network/Content Distribution Network,意思是 内容分发网络 。是针对静态资源访问加速的一种方式,可以将静态资源分发到不同的地方,用户访问的时候实现就近访问,提升静态资源的响应速度,减轻服务器压力及带宽负担。

CDN 工作原理是什么?

  1. 浏览器向DNS发送资源请求。
  2. DNS服务根据CNAME别名记录向GSLB发送请求。
  3. GSLB返回性能最好的CDN节点地址给浏览器。
  4. 浏览器直接访问CDN节点。
  5. 如果CDN节点中无用户请求资源或资源已经过期了,CDN节点会进行回源,需要从原始服务器获取最新资源内容。
  6. CDN节点缓存并返回资源给浏览器。

GSLB(Global Server Load Balance,全局负载均衡)是 CDN 的大脑,负责多个 CDN 节点之间相互协作,最常用的是基于 DNS 的 GSLB,

GSLB 会根据请求的 IP 地址、CDN 节点状态(比如负载情况、性能、响应时间、带宽)等指标来综合判断具体返回哪一个 CDN 节点的地址。

当回源发生时,本次请求会比没有CDN加速还要慢,因为要多一次CDN调用过程。为了防止回源,可以先进行预热,主动将静态资源缓存到CDN节点上。

如何防止资源被盗刷?

一般有两种方式

  1. 设置Referer防盗链,获取HTTP请求头中的Referer字段进行限制,获取请求来源的网页地址,如果是不合法的就拦截。

当然请求方可以隐藏Referer字段,这样就无法获取到来源网址,可以使用第二种方法。

  1. 时间戳防盗链,安全性更好,将用户设定的加密字符传,请求路径,时间戳,进行MD5加密得到签名字符串和过期时间作为URL参数。

一般两种方法可以组合使用。可以有效防止资源被盗刷。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号