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

问题描述 投票:1回答:2

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

  • 防止过度查询数据库或第三方API
  • 防止垃圾邮件
  • 防止其他人抓取我的数据

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

在节流方面,我应牢记任何特定的最佳做法吗?

php security apache web-applications throttling
2个回答
1
投票

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

也可以进行PHP节流,但是只有在您要拒绝对资源的访问而不仅仅是延迟时,才应该这样做。 有关更多详细信息,请参考我在类似问题中给出的答案(和评论):


0
投票

在我的头顶上,您可能要考虑使用以下几个:

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

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

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

通常,这些方法分为客户端和服务器端。 部署最适合您自己,最方便的东西。

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

希望能帮助到你。 干杯!

© www.soinside.com 2019 - 2024. All rights reserved.