为了加快网站访问速度,本站所有的图片文件已托管到了七牛云存储。近日也想尝试将js文件托管到七牛云存储,但是将js文件托管到七牛后发现评论时七牛返回: {"error":"get from source failed: E405"} 错误。
本站使用的是知更鸟begin主题自带的ajax评论,js文件静态分离托管到七牛或者其他CDN后,ajax评论的核心文件comments-ajax.js(新版本begin主题请修改comments-ajax-qt.js)也被缓存到了七牛或者其他CDN上,由于地址的改变,所以造成ajax评论失败,说下解决办法吧:
打开主题目录下的comments-ajax.js(新版本begin主题请修改comments-ajax-qt.js)文件,在comments-ajax.js(新版本begin主题请修改comments-ajax-qt.js)文件最上方找到:
- var i = 0, got = -1, len = document.getElementsByTagName('script').length;
- while ( i <= len && got == -1){
- var js_url = document.getElementsByTagName('script').src,
- got = js_url.indexOf('comments-ajax.js'); i++ ;
- }
在其下方添加:
- js_url = js_url.replace('res.duoluodeyu.com','www.duoluodeyu.com');
其中'res.duoluodeyu.com'是你在七牛或其他CDN绑定的静态资源域名,'www.duoluodeyu.com'是你网站的网址。
2017年10月13日更新:
由于新版本的begin主题ajax评论使用的是comments-ajax-qt.js,如你是近期获得的begin主题,请对应修改comments-ajax-qt.js文件。