CDN(Content Delivery Network)即内容分发网络,通过在网络各处放置节点服务器,构成在现有的互联网基础之上的一层智能虚拟网络。
CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上,用于确保快速可靠地分发静态内容,这些内容可以缓存,最适合在网速庞大的网络中存储和分发。
适用范围
CDN 对于常见的 HTTP 请求方式(GET POST HEAD PUT DELETE OPTIONS)均是支持的,但是并不是对所有请求方式都会进行缓存的。
CDN 仅会对于 GET 请求进行缓存,而对于其他的请求均不进行缓存,仅是起到中间代理、转发的功能。
CDN 的站点源站最好能够 将动态请求和静态请求的内容独立成两个站点,实现动静分离, CDN 仅加速静态站点中的资源。
注意:
- CDN 处理 HEAD 请求时会将 HEAD 请求转换成 GET 请求回源,因此源站日志中记录的是 GET 请求。
- CDN 仅支持 POST 和 PUT 方式发送带有请求体(BODY)的 HTTP 请求。
缓存规则
-
CDN 判断一个资源是否进行缓存时,首先会根据源站对该资源是否设置了不进行缓存的配置,具有最高优先级:
- 源站配置了缓存规则转 2;
- 源站