设为首页收藏本站

简体中文 繁體中文 English 日本語 Deutsch 한국 사람 بالعربية TÜRKÇE português คนไทย Français

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 111|回复: 10

nginx反代和CTRL+F5问题,有大佬研究没有?

[复制链接]

61

主题

395

回帖

1013

积分

金牌会员

积分
1013
发表于 2019-5-12 14:14:09 | 显示全部楼层 |阅读模式
nginx反代缓存,默认CTRL+F5是不能刷新的。以前用的squid没这个问题。
阿里云cdn用的tengine也是nginx,但是阿里云CDN是能够实现CTRL+F5强制刷新缓存的,用的什么原理?
网上搜索了下,这个文章提到这个:[ol]
  • http://bbs.linuxtone.org/forum.php?mod=viewthread&tid=7315[/ol]复制代码
    但是有个问题,能实现CTRL+F5强制刷新缓存了,返回页面却是purge的成功页面。阿里云CDN强制刷新后是原页面的。
    有大佬指点下吗?
  • 回复

    使用道具 举报

    34

    主题

    2742

    回帖

    5646

    积分

    论坛元老

    积分
    5646
    发表于 2019-5-12 14:17:23 | 显示全部楼层

    h2o 发表于 2019-5-12 14:17

    先学习一下什么叫  304 Not Modified


    304是取本地缓存的吧? 我的意思是能够刷新nginx purge的缓存
    回复

    使用道具 举报

    61

    主题

    395

    回帖

    1013

    积分

    金牌会员

    积分
    1013
     楼主| 发表于 2019-5-12 14:19:20 | 显示全部楼层
    你本地强制刷新,能purge CDN缓存?
    回复

    使用道具 举报

    101

    主题

    2113

    回帖

    4625

    积分

    论坛元老

    积分
    4625
    发表于 2019-5-12 14:17:00 | 显示全部楼层
    ctrl f5是强制刷浏览器缓存
    回复

    使用道具 举报

    16

    主题

    841

    回帖

    1826

    积分

    金牌会员

    积分
    1826
    发表于 2019-5-12 15:40:08 | 显示全部楼层
    本帖最后由 wcn 于 2019-5-12 16:13 编辑

    dvbhack 发表于 2019-5-12 15:40

    你本地强制刷新,能purge CDN缓存?


    能的,阿里云cdn可以。
    大佬,我这贴给的文章网址就是介绍这个的,请仔细看帖。





    [ol]
  • 原理:
  • Ctrl+F5无非就是请求头里面加了个 Cache-Control:no-cache 如果nginx能识别并进行相应的操作 就能解决了把
  • 其实只是判断nginx的头部信息
  • $http_Cache_Control = no-cache
  • 配置:
  • nginx的cache配置里面加入
  • if ($http_Cache_Control = "no-cache") {
  •       rewrite ^(.*)$ /purge$1 last;
  • }[/ol]复制代码

    现在就是刷新成功,返回的页面是purge的页面,而不是原页面,不知道怎么解决。

    另外,squid也能实现F5刷新服务器端缓存。

    请大佬指导下。

  • 回复

    使用道具 举报

    61

    主题

    395

    回帖

    1013

    积分

    金牌会员

    积分
    1013
     楼主| 发表于 2019-5-12 15:48:18 | 显示全部楼层
    干嘛要配置成这样  设置个自动到期时间不就好了
    回复

    使用道具 举报

    278

    主题

    1401

    回帖

    3766

    积分

    论坛元老

    积分
    3766
    发表于 2019-5-12 16:08:53 | 显示全部楼层
    那样是不是就可以随意cc了?感觉和缓存的功能相违背,这种更新缓存不应该也是自动的么?
    回复

    使用道具 举报

    168

    主题

    1136

    回帖

    2864

    积分

    金牌会员

    积分
    2864
    发表于 2019-5-12 15:40:00 | 显示全部楼层
    ctrl f5是传说中的cc。
    回复

    使用道具 举报

    67

    主题

    1323

    回帖

    2907

    积分

    金牌会员

    积分
    2907
    发表于 2019-5-12 16:19:20 | 显示全部楼层

    coxyblog 发表于 2019-5-12 17:54

    那样是不是就可以随意cc了?感觉和缓存的功能相违背,这种更新缓存不应该也是自动的么? ...


    有些场景有这需求吧
    反正我觉得有这个需求可以加上这个功能,没这个需求按nginx默认的你要是这么干,一行代码,用curl就吃光你源站的流量。
    回复

    使用道具 举报

    0

    主题

    1

    回帖

    4

    积分

    新手上路

    积分
    4
    发表于 2019-5-12 17:54:05 | 显示全部楼层

    dvbhack 发表于 2019-5-12 20:47

    你要是这么干,一行代码,用curl就吃光你源站的流量。

    感觉都差不多吧
    按nginx默认的,有人恶意的话,url后面加个“?随机后缀”效果相同,都是每次访问从源站请求资源。
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|Discuz! X

    GMT+8, 2025-12-20 00:49 , Processed in 0.015899 second(s), 4 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2025 Discuz! Team.

    快速回复 返回顶部 返回列表