由于前一阵网站被攻击,启用了 Cloudflare免费服务防护CC、DDOS攻击 ,防护效果很有效,因此相关配置一直启用未做调整。
最近偶然发现 Feedly订阅自己博客异常,现象诡异:
a、更新内容条目不完整,经常有几条最新博文,但Feedly只获取更新一条
b、有时候隔上几天都不更新,即便那几天有新的博文
用Readwise reader 测试,更过分,基本上无法获取任何更新。
使用 Feeder.co 测试,可以正常获取RSS更新。
想起前一阵Hacker News上有人提到过此问题 Using Cloudflare on your website could be blocking RSS users 。
在Hacker News的讨论和OpenRSS的博文都提到针对不同的RSS 阅读器User-Agent 在CloudFlare上指定例外规则,但当时一看太麻烦就未再深入研究。
研究一阵后,找到了解决办法,原有防护DDOS的规则都保留,未做调整。
1、安全性->自动程序
由于要防护DDOS和CC攻击,因此保留了“自动程序攻击模式”,“阻止AI自动程序”关闭。
2、安全性->WAF->自定义规则
新增自定义规则,将“已通过验证自动程序类别”(https://radar.cloudflare.com/traffic/verified-bots)和网站RSS feed地址加入到例外规则中
此处Or规则,是把网站的RSS的feed路径加入到例外规则,例如 https://example.com/feed 。
Or的例外规则,也可以在页面规则中指定:
规则->页面规则 ,新增页面规则,把网站feed地址 设置为“禁用安全性”。
按照以上设置后,Feedly、Readwise reader都可以正常更新了。