腾讯云服务器优惠活动华纳云香港服务器

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

WordPress主题推荐

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 是站点地址,记得修改成自己的地址哦。

本文地址:https://boke112.com/post/4616.html

赞 (0) 打赏
版权声明:本文为原创文章,版权归 boke112百科 所有,欢迎分享本文,转载请保留出处!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请联系我们,确认后马上更正或删除,谢谢!
wu