限制Web应用程序的最佳做法?

时间:2011-05-05 03:53:15

标签: php security apache web-applications throttling

在我的网站上,我需要出于各种原因限制用户请求:

  • 防止过度使用数据库或第三方apis
  • 防止垃圾邮件
  • 防止他人抓取我的数据

我想知道节流的最佳做法是什么?它应该在脚本级别(PHP / MySQL)还是在服务器级别(Apache)完成?

关于限制,我应该记住哪些具体的最佳实践?

2 个答案:

答案 0 :(得分:1)

理想情况下,这应该在网络/防火墙级别或至少在Apache上完成。

PHP限制也是可能的,但只有在您想要拒绝对资源的访问而不仅仅是延迟时才应该这样做。请参阅此答案(和评论)我在类似问题中提供了更多详细信息:

答案 1 :(得分:0)

在我的脑海中,有一些你可能想要考虑使用:

1)您可以使用JavaScript创建设置标志的间隔,以便您可以使用该标志进行检查,以确保它们在间隔期内不会请求。

2)您可以使用PHP并将其请求时间存储在您正在运行的会话中,并对其进行检查,以便它们不会过于频繁地发出请求。

3)您可以使用MySQL记录上次访问时间,并查看是否允许他们使用该资源。

通常这些方法分为客户端和服务器端。部署您感觉最舒适的,并且对您自己最方便。

并非所有部署都允许您修改Apache Server配置:)

希望它有所帮助。干杯!