在PHP中实现站点访问速率限制

时间:2010-09-11 21:46:35

标签: php mysql limit ddos

我正在LAMP框架+ Codeigniter上开发一个相当简单的站点,并希望实现用户访问速率限制功能,以防止站点充斥着来自单个用户的请求。该网站的基本功能是获取代码输入并返回一些信息。

我只处于规划阶段,我的第一个想法是拥有一个包含IP地址,最后访问时间戳和访问次数的简单数据库表,但由于我的编码技能植根于非基于Web的应用程序,我会感谢任何有关处理此任务的最佳方法的想法 - 例如,我应该考虑会话ID而不是IP地址吗?

我对一些常规网络搜索没有太多了解,所以任何指针或指导都会很棒。

感谢。

1 个答案:

答案 0 :(得分:4)

如果你真的需要这样做,那么在PHP参与之前你可能会更好。您可能会考虑配置路由器或负载均衡器来执行此操作,或者至少考虑某种类型的Web服务器模块。

在PHP中执行此操作可能会产生很多自我挫败的开销。