CND缓存后wordpress不能评论的解决办法

2018-04-01评论5,869

CND缓存后wordpress不能评论的解决办法

今天遇到CDN缓存后不能立即显示评论的问题,搜索一翻,最终以此办法解决!特此笔记,也希望能帮到后来的朋友。

comments-ajax.js在cdn缓存后,很多人遇到无法(使用ajax)回复的问题。对此,我之前的做法只是禁止cdn缓存此文件,便不作他想。
其原始解决办法是,在comments-ajax.js中的后面:

var i = 0, got = -1, len = document.getElementsByTagName('script').length;
while ( i <= len && got == -1){
  var js_url = document.getElementsByTagName('script')[i].src,
      got = js_url.indexOf('comments-ajax.js'); i++ ;
}

添加:

js_url = js_url.replace('CDN地址','你的域名');

比如:

js_url = js_url.replace('myqqjd.com.k.kunluncan.com','myqqjd.com');

这样就可以解决这个问题了。

为此,我做了点便民小修改,改为在“}”后面添加:

var dm = js_url.match(/http:\/\/([^\/]+)\//i);
js_url = js_url.replace(dm[1],'你的域名');

这样就可以了,省了一步查看并填写cdn域名,只需填写自身域名即可。就不做例子了。

当然啦,最后别忘记刷新缓存。更新下cdn的comments-ajax.js文件

 

发表评论