V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cquyf
V2EX  ›  程序员

关于有提交留言等行为清除缓存的方法请教

  •  
  •   cquyf · 2020-02-12 18:22:50 +08:00 · 1920 次点击
    这是一个创建于 1527 天前的主题,其中的信息可能已经有所发展或是发生改变。
    之前在 https://www.v2ex.com/t/643157 提到过,使用 nginx 反代后,可以访问指定的页面来清除缓存。

    xxx.com/xx.htm 可以通过 xxx.com/purge/xx.htm 来清除这个页面的缓存。

    因此,完全可以利用 jQuery 来实现实时清空缓存,只要 xx.htm 页面有人提交留言等动作,就触发去访问 xxx.com/purge/xx.htm 来清除,实现自动更新缓存。

    程序用的 wordpress,触发 JS 代码可以放在模板的 footer.php 中。

    个人不懂 jQuery,有大佬帮忙实现吗?
    9 条回复    2020-02-15 12:34:13 +08:00
    pickcat
        1
    pickcat  
       2020-02-12 20:46:57 +08:00
    大佬家也没有富余时间啊~
    cquyf
        2
    cquyf  
    OP
       2020-02-12 21:05:58 +08:00
    @pickcat 还是没等到大佬,哈哈
    wunonglin
        3
    wunonglin  
       2020-02-12 21:22:23 +08:00   ❤️ 3
    <a href="javascript:alert('清除成功');">清除缓存</a>
    masterjoess
        4
    masterjoess  
       2020-02-12 21:23:46 +08:00
    在客户端用 jquery 来清除 nginx 缓存太奇怪了
    应该在后端留言等动作 php 插入代码来清除缓存
    比如:
    php 调用 curl 访问 xxx.com/purge/xx.htm
    或者
    filesystem 删除 nginx 缓存档案
    dcd
        5
    dcd  
       2020-02-12 21:33:28 +08:00 via Android
    可以考虑 nginx-helper 插件
    falcon05
        6
    falcon05  
       2020-02-12 22:23:41 +08:00 via iPhone
    wp 那么多缓存插件不好用吗?哪里需要重新发明一套,再说评论后更新缓存也是这些插件的常规操作
    cquyf
        7
    cquyf  
    OP
       2020-02-13 12:53:22 +08:00
    @masterjoess filesystme 请求是源站,因此无法清理。只能 web 方式清理。
    cquyf
        8
    cquyf  
    OP
       2020-02-13 12:55:46 +08:00
    @dcd 我试试,感谢了。
    Tony4ee
        9
    Tony4ee  
       2020-02-15 12:34:13 +08:00 via iPhone
    请用 example.com
    否则 NSFW 警告⚠️(辶
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5183 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 08:26 · PVG 16:26 · LAX 01:26 · JFK 04:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.