昨天登陆Google网站管理员工具,在故障诊断的抓取错误栏,Google告诉我https://www.cpplive.com/?feed=rss2跟https://www.cpplive.com/feed获取失败,前者的原因是受到robots.txt的限制,因为我在robots里添加了”Disallow:/?”,后者找了很久才发现是rss生成的格式不对。
寻医问诊
在W3C官网上有针对这一问题的的描述和解决方法指导,我大概阐述下它的意思。原来rss的格式要求非常严格,在<?xml … ?>标签之前不能存在任何空白(包括空格、空白)。
对症下药
找出wordpress中跟生成rss有关的文件,然后去掉<? … ?>标签之外的空白。
检查 wp-rss.php 、wp-rss2.php 和 wp-atom.php 文件,没有发现;
检查 wp-config.php ,没有发现;
检查 funshions.php ,发现末尾有空行,删掉,保存,刷新网页,OK了。
如果你经过了这么多步骤还没解决,一个一个地禁用插件并检查feed是否出错,直至确定导致问题的插件。
希望能够帮到你。
除非注明,文章均为CppLive 编程在线原创,转载请注明出处,谢谢。