1

有一个站点\资源提供了一些一般统计信息以及搜索工具的界面。这种搜索操作成本很高,所以我想限制频繁和连续(即自动)的搜索请求(来自人,而不是来自搜索引擎)。

我相信有许多现有的技术和框架可以执行一些情报抓取保护,所以我不必重新发明轮子。我通过 mod_wsgi 使用 Python 和 Apache。

我知道 mod_evasive (将尝试使用它),但我也对任何其他技术感兴趣。

4

2 回答 2

1

如果有人正在搜索您的网站和数据,那真的很有价值——在这种情况下,没有什么能阻止足够聪明的攻击者。

虽然有些事情值得尝试:

  • 保留来自特定 IP 和用户代理的搜索使用计数器。当达到一些分钟/小时/每日阈值时阻止它们。
  • 使用潜在有害 IP 或威胁级别的黑名单(例如,您可以为此使用Cloudflare API
  • 缓存频繁的搜索结果以降低成本
  • 这可能有点疯狂,但您可以在图像上或通过 flash/java 小程序呈现统计信息 - 这将使它们更具挑战性
  • 与上一个有点相似:使用一些棘手的 API 来访问搜索结果,例如它可以是 ProtocolBuffers over WebSockets。所以有人可能需要一个成熟的浏览器来抓住它,或者至少必须围绕 node.js 构建一些诡计。缺点 - 您将失去使用旧浏览器的合法客户。
于 2012-11-01T04:46:25.673 回答
0

你可以试试robots.txt 文件。我相信你只是把它放在你的应用程序的根目录下,但是那个网站应该有更多的细节。Disallow语法就是你要找的。

当然,并非所有机器人都尊重它,但它们都应该尊重它。所有大公司(谷歌、雅虎等)都会这样做。

您可能也对这个关于禁止动态 URL的问题感兴趣。

于 2011-12-19T14:53:52.100 回答