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

问个nginx缓存清除问题

[复制链接]

202

主题

1110

回帖

2932

积分

金牌会员

积分
2932
发表于 2018-6-16 16:26:48 | 显示全部楼层 |阅读模式
因为有登陆用户所以 缓存的时候加了个cookie  

[ol]
  • proxy_cache_key "$host$request_uri$cookie_name";[/ol]复制代码

    配置的purge

    [ol]
  •     location ~ /cache(/.*) {
  •     proxy_cache_purge cache $host$1$is_args$args;
  •     error_page 405 =200 /cache$1;
  •     }[/ol]复制代码


    可以清除未登录用户的缓存 对于已登陆的缓存确无法清除


    换成下面这样的也不行
    proxy_cache_purge cache $host$1$cookie_name;
    proxy_cache_purge cache $host$1$is_args$args$cookie_name;

    有大佬知道这个改怎么写么
  • 回复

    使用道具 举报

    2

    主题

    50

    回帖

    124

    积分

    注册会员

    积分
    124
    发表于 2018-6-16 16:38:33 | 显示全部楼层
    head输出【$host$1$is_args$args】和【$host$request_uri$cookie_name】看看对不对就行了。
    个人不建议proxy_cache_key太复杂。
    回复

    使用道具 举报

    202

    主题

    1110

    回帖

    2932

    积分

    金牌会员

    积分
    2932
     楼主| 发表于 2018-6-16 16:52:07 | 显示全部楼层

    qqqq 发表于 2018-6-16 16:38

    head输出【$host$1$is_args$args】和【$host$request_uri$cookie_name】看看对不对就行了。
    个人不建议prox ...

    0 0  head输出 是浏览器查看么  登陆了有看到  登陆用户缓存无法清楚这个是配置写错导致的么

    那除了proxy_cache_key 还有啥其他办法么
    回复

    使用道具 举报

    39

    主题

    1287

    回帖

    2723

    积分

    金牌会员

    积分
    2723
    发表于 2018-6-16 16:38:00 | 显示全部楼层
    本帖最后由 002 于 2018-6-20 12:50 编辑

    是不是看了张戈的 ngx cache purge  ?
    不是有一个判断,规则里面不加 所有访问者 缓存 就行了。?
    [ol]
  •         #对登录用户、评论过的用户不展示缓存(这个规则张戈博客并没有使用,所有人看到的都是缓存)
  •         if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
  •             set $skip_cache 1;
  •         }[/ol]复制代码
  • 回复

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2025-5-8 17:34 , Processed in 0.017492 second(s), 3 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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