WordPress开启CDN后评论失败怎么办?

 2018-02-05 13:45:14  72 人阅读  0 条评论
 最佳答案:

WordPress 博客如果将静态资源如 JS 文件等采用 CDN 加速的话,一般都会出现评论不成功的情况,这是因为评论时所获取的 commonts-ajax.js 路径不正确导致,所以解决的办法有两个:

方法一:在 CDN 中设置不缓存 commonts-ajax.js 文件即可;

方法二:修改 commonts-ajax.js 文件,打开当前主题所使用的 commonts-ajax.js 文件,找到以下代码:

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

在后面添加一句

  1. js_url = js_url.replace('res.yigujin.cn','www.yigujin.cn');

变成

  1. var i = 0, got = -1, len = document.getElementsByTagName('script').length;
  2. while ( i <= len && got == -1){
  3.     var js_url = document.getElementsByTagName('script')[i].src,
  4.             got = js_url.indexOf('comments-ajax.js'); i++ ;
  5. }
  6. js_url = js_url.replace('res.yigujin.cn','www.yigujin.cn');

保存好文件并刷新该文件的缓存后即可解决评论失败的问题。如果 CDN 的域名不唯一经常变动,那么可以直接把前面那段代码改成:

  1. var i = 0, got = -1, len = document.getElementsByTagName('script').length;
  2. while ( i <= len && got == -1){
  3.     var js_url = document.getElementsByTagName('script')[i].src,
  4.             got = js_url.indexOf('comments-ajax.js'); i++ ;
  5. var dm = js_url.match(/http:\/\/([^\/]+)\//i);
  6. js_url = js_url.replace(dm[1],'www.yigujin.cn');
  7. }

其中 a.yigujin.cn 就是所谓的 CDN 地址,www.yigujin.cn 是站点地址,记得修改成自己的地址哦。

问题标签: ,   ,  更多问题标签>>
编辑作者:懿古今(QQ号:2226524923,QQ群:415623933
免责声明:本文内容来源于互联网,仅供参考学习之用,如有侵权请联系本站修改删除!
问题分类:WordPress问题 ,  建站技术问题 ,  操作系统问题 ,  办公软件问题 ,  搜索热点问题 ,  综合其他问题

相关问题 热门问题近期问题随机标签

 发表评论

中国赞表情摊手表情吃瓜表情笑哭表情偷笑表情衰表情汗表情思考表情费解表情抓狂表情晕表情流泪表情疑问表情嘻嘻表情吃惊表情鼓掌表情