侧边栏壁纸
  • 累计撰写 175 篇文章
  • 累计创建 87 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

通过php代码控制CDN页面缓存时间

Z先森
2020-10-20 / 0 评论 / 0 点赞 / 10 阅读 / 974 字 / 正在检测是否收录...
架构:

后端apache+php
nginx代理
CDN回源到nginx

需求:

当代码输出了缓存时间头的时候,优先取代码层面设置的,当代码未输出缓存时间头的时候,取nginx配置的默认值

配置:
#nginx location内配置:
add_header Cache-Control $upstream_http_cache_control; #取后端apache/程序传过来的头
expires 2h;  #设置默认值
#cache-control优先级是高于expires的,所以可以达到效果
测试代码
<?php
//当程序输出下面的头时,cdn节点缓存时间会以下面的为准,无下面的头时,则以nginx设置的expires为准
header('Cache-Control: max-age=300');
主要技术点

nginx取后端机的自定义头是$upstream_http_xxx,这种格式,网上说的$sent_http_xxx,测试效果不是很好

0

评论区