七牛云ajax,关于使用七牛云存储插件导致AJAX评论错误 _ 唯心寒辞

之前用emlog的时候,我也有用过七牛云作为加速,搬来WordPress后,也和大部分人一样用起我爱水煮鱼的七牛云存储插件。

刚开始用的时候,我没有把JS文件设置成要缓存的文件,因为我刚开始用的时候发现设置后评论报错{“ERROR”:”GET FROM IMAGE SOURCE FAILED: E405″},然后也就没去管他,反正能用就行了。。。

这几天想找找能不能找到解决方法。

QINIU72526.jpg

百度了下,问题为使用七牛CDN导致AJAX评论错误。

解决方法呢,普遍是下面2种:

第一种:

修改commonts-ajax.js使之支持CDN路径,具体方案如下:

找到如下代码:

vari = 0, got = -1, len = document.getElementsByTagName('script').length;

while( i <= len && got == -1){

varjs_url = document.getElementsByTagName('script')[i].src,

got = js_url.indexOf('comments-ajax.js'); i++ ;

}

在后面加入代码:

js_url = js_url.replace('ex.bkt.clouddn.com','www.wxlog.cn');

ex.bkt.clouddn.com改为你的七牛提供的二级域名或者你的七牛云绑定域名,www.wxlog.cn修改为你的域名。

然后更新commonts-ajax.js文件。

这样就可以解决这个问题了。(但是我更新了好像没什么反应,不知道是不是我那里出了问题,直接跳过。。。)

第二种:

直接排除缓存这个文件

使用WP-Super-Cache插件的CDN功能添加例外选项,如下图:

1213221446.jpg

但是我之前用过这个插件,总是缓存不成功,最终还是放弃这个插件,没有再使用,所以这方法对我也没用。。。

最后总算找到一个修改七牛CDN插件的方法:

打开插件目录,找到wpjam-qiniutek.php文件打开,定位至100行return $html前,插入以下代码:

$html= str_replace('http://加速域名/wp-content/themes/主题/js/comments-ajax.js', 'http://原网站域名/wp-content/themes/主题/js/comments-ajax.js', $html);

原理:

插件已经修改静态文件原目录至CDN目录,只需要再把comments-ajax.js这一个文件的目录改回来即可,其中第一个路径是CDN服务器上comment-ajax.js的路径,需要把它替换为第二个路径,即网站原文件路径,具体根据你的网站自己稍作修改即可,这样既体验了七牛CDN,又解决了AJAX评论错误的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值