网站建设

百度云加速或360网站卫士关于WordPress评论缓存的巧妙设置

Jager · 10月17日 · 2014年 · · · 4363次已读

开启云加速或网站卫士的 html 缓存后,文章和页面将缓存到 CDN 节点,导致用户评论之后无法及时显示,必须等到 CDN 节点刷新缓存才能展示已有评论。

那么就会出现这样一个问题:当管理员回复了用户评论时,WordPress 会给向用户邮箱发一封评论被回复的通知邮件。可是,用户点击邮件的评论链接之后,却无法看到管理员的回复,也就无法二次回复管理员了。

本来,我想可以用 ajax 动态加载评论列表,避开缓存的。可惜,空有想法却不会实现!希望有懂 PHP 和 JS 的朋友指点一二,实现这个还没人分享过的技术!

当我无聊翻看邮箱已发送邮件时,发现 WordPress 发出评论回复通知中,评论链接地址是这样一种形式:

https://zhang.ge/liuyan/comment-page-8/#comment-8171

那就好解决了,直接在百度云加速或网站卫士的缓存黑名单里面排除带 comment 或 page 关键字就可以了!

比如,360 网站卫士可以这样设置:

百度云加速或360网站卫士关于WordPress评论缓存的巧妙设置

同样的,如果是百度云加速,也可以如下设置:

百度云加速或360网站卫士关于WordPress评论缓存的巧妙设置

保存设置之后,再去访问带 comment-page 关键字的页面,就不会被缓存了,而是展示最新内容。现在,从评论邮件点击过来的用户就可以看到管理员的最新回复了,是不是很巧妙呢?

百度云加速和 360 网站卫士的缓存黑名单都是支持通配符的,所以只要你挑选一个通用的关键词+通配符,就能避开缓存了,本文正式利用这一点,解决了 CDN 缓存带来的困扰。

10 条回应
  1. 圆月博客 2014-10-17 · 13:26

    张哥懂得真多,大家有福了。

  2. 来赚博客 2014-10-21 · 15:24

    买了一个备案域名。好激动 :grin:

  3. 软件海 2015-6-22 · 0:51

    赞一个,解决了我的问题。另外还要补充一点,后台登陆地址、网站地图和robots也都要添加到黑名单里去。

  4. lonl 2015-9-8 · 11:52

    经与360网站卫士客服咨询,360网站卫士不支持通配符。
    但实际测试是支持的 :sad:

    • 筑楼 2017-5-31 · 2:53

      怎么才能支持通配符?

    • 缙哥哥 2017-7-29 · 22:21

      请问该怎么设置,让博客支持登陆和评论呢?

  5. 地火 2016-7-1 · 11:41

    太有营养了!最近一直在看博主的文章,造福人类呀!谢谢了!

  6. 筑楼 2017-5-31 · 2:52

    请问,现在360怎么才能实现评论不缓存?

    • avatar
      Jager 2017-5-31 · 14:14

      很久没用了,不清楚,你可以问下客服。

  7. 明月登楼 2018-3-29 · 15:29

    无语了,我一直以为360网站卫士是不支持通配符的!原来是支持的!