您好,
我们最近在服务器上部署了 Anubis 来防御资源密集型的 AI 爬虫。它会向带有类浏览器用户代理的请求发送一个静态页面,标题为“正在确认您不是机器人!”然后进行 JavaScript 难度证明,最后重定向到正确的页面。用户代理名称中不包含 Mozilla 的请求可以直接访问页面。
现在,Discourse 的 onebox 链接预览已损坏,但仅限于内联链接。
查看服务器日志,Discourse 发送了两种不同类型的用户代理:
-
Discourse Forum Onebox v3.4.1用于大的 onebox 链接预览(请参阅03f3e84ce520d375aa1c66bb0e95cc5ed9832776中的lib/onebox/helpers.rb#L217-L226) -
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15用于内联链接预览(请参阅03f3e84ce520d375aa1c66bb0e95cc5ed9832776中的lib/final_destination.rb#L40)
我尝试了管理设置中的“强制自定义用户代理主机”,该设置声称“用于在所有请求上使用自定义 onebox 用户代理的主机。”,但没有起到任何作用。
我也尝试更改了 onebox_user_agent 隐藏设置,但这只会更改常规 onebox 链接预览的用户代理,而不会更改内联预览的用户代理。
在我看来,这似乎是一个 bug,难道不应该为内联链接预览也使用相同的可配置的“Discourse Forum Onebox”用户代理吗?
谢谢!