最近使用七牛CDN加速,发现Wordpress评论会提示报错{“error”:”get from image source failed: E405″},网上找了比较多关于wordpress使用七牛CDN导致ajax评论报错{“error”:”get from image source failed: E405″}的方法,今天分享这个可以解决bug问题的代码给到大家。
1、修改comments-ajax.js文件
这种方法的好处是你依旧可以体验完整的CDN镜像服务,你需要打开你主题目录下对应的文件然后修改它,找到如下的代码段(一般应该是在开头的)
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('logcg.qiniudn.com','www.logcg.com'); 这样,修改完成后应该是下边的样子 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('logcg.qiniudn.com','www.logcg.com');
然后就保存上传就好了,当然,我希望你能搞定七牛的文件更新XD。
2、添加CDN镜像例外
如果你和我一样是使用WP Super Cache来开启CDN镜像的,那你也可以选择我这种修复办法——直接将这个js文件排除在镜像列表之外就好了,虽然加载的时候多了一个js文件,但省去了对付七牛那个缓慢的刷新过程,其实还是很不错的,立竿见影啊~
另外,我想其他的CDN插件应该也会有类似的排除功能,你可以领会精神然后自己去插件里找找——至于直接使用代码实现CDN的大神
好了,找到你WP Super Cache的CDN页面,然后在下边找到“如果是之前有则排除”这一项,将comment-ajax填写进去就好了。
记得多个语句之间用英文的逗号来分隔哦!
填写完成的样子如图所示:
这样,就只有这一个文件被排除在CDN之外了。
等CDN生效问题就解决了
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。