美文网首页DiDi的私人小别墅
解决使用七牛CDN导致AJAX评论报错{“ERROR”:”GET

解决使用七牛CDN导致AJAX评论报错{“ERROR”:”GET

作者: DiDisasa | 来源:发表于2020-01-10 00:44 被阅读0次

    后知后觉,博客开到现在才发现评论有问题,提交时会显示“ERROR”:”GET FROM IMAGE SOURCE FAILED: E405″,难怪我说怎么到现在没有任何评论...

    百度了下,是七牛云缓存导致的..也就是说,如果你的主题是 Ajax 评论,又使用七牛云存储,七牛在存储comments-ajax.js 的同时会将comments.php 连着存储过去了。comments.php 这个php 文件只能在php 环境下运行,但明显在七牛服务器里的comments.php 并不是处于php 环境,因此WordPress的 Ajax 评论就会失效。

    一、直接修改主题里的ajax.js文件

    1、在comments-ajax.js 文件(wp-content/themes/主题名/js/comments-ajax.js)中找到下面这段代码

    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++ ;

    }

    2、在上述代码后边加入这样一句话

    js_url = js_url.replace('qiniu.didisasa.com','www.didisasa.com');

    把qiniu.didisasa.com替换成你七牛绑定的二级域名,www.didisasa.com替换成你自己的域名。

    3、添加完保存,然后去七牛云控制台更新。刷新文件里填入地址:

    http://qiniu.didisasa.com/wp-content/themes/begin/js/comments-ajax.js

    PS:把qiniu.didisasa.com替换成你七牛绑定的二级域名

    二、直接排除缓存这个文件

    我用的插件WP Super Cache,在插件设置里,加入"comments-ajax"

    三、关闭Ajax评论(重试成功后可以再打开)

    其实前面两种方法我当时都试了,结果还是提示405错误..郁闷的。后来DiDi直接到主题的评论设置里,关闭了Ajax,再一刷新,居然可以评论了!再把Ajax评论打开也再没提示错误。费解...不管怎么样,写出来供大家参考吧...


    来源于DiDi的私人小别墅,欢迎分享,转载请注明。

    扫码关注微信公众号,寻找有趣的人,精彩世界与你分享。

    相关文章

      网友评论

        本文标题:解决使用七牛CDN导致AJAX评论报错{“ERROR”:”GET

        本文链接:https://www.haomeiwen.com/subject/myauactx.html