【发布时间】:2011-03-04 16:53:44
【问题描述】:
早安,
我想知道如何保护我的网站免受 ajax 垃圾邮件的侵害。我希望限制每个 ajax 操作 用户。假设每分钟 8 次 ajax 操作。
一个动作的例子是:添加/删除博客文章“作为我的最爱”的按钮。
除非我错了,否则我相信最好的方法是使用 $_SESSION 的变量并避免某人/机器人清除
cookie 以避免我的保护。我只允许登录用户使用 ajax 函数。
使用数据库会使我的保护失效,因为这是我试图避免的不需要的数据库写入。
我不得不提一下,我实际上使用 PHP 作为服务器语言并使用 jQuery 来进行我的 ajax 调用。
谢谢
编辑:
句子
...保护我的网站...
令人困惑,但这与跨域 ajax 无关。
2011-04-20 编辑: 我给它加了 50 的赏金。
【问题讨论】:
-
我为什么不不断更改日期以接听更多电话?此外,cookie 不适用于大多数/所有机器人。如果我理解正确,我可以使用 PHP 的 curl 轻松绕过您的限制。
-
基本上,您限制动作,每分钟 8 次,然后拒绝所有动作。这可能有效,即使我不确定限制您的用户使用 ajax 调用是最好的做法:) 没有人喜欢在使用网站时受到时间或数量的限制——我当然不会
-
@Kevin,我怀疑你可以自己更改日期:它是一个会话变量。此外,即使使用 cURL,您也必须发送与登录用户匹配的良好 sessionid,以便您可以继续执行任何操作。
-
我的假设是这是某种 API。如果不是,我必须同意你的观点,除非有原因(比如作为游戏)。不过,在游戏的情况下,我会使用某种数据库跟踪来防止后门。
-
@Tsadiq,假设我有一个与此类似的页面,我想阻止用户向“收藏”按钮(开/关)发送垃圾邮件。
标签: php ajax spam-prevention