如何用 php 寫一個 ddos 防止?

想問一下有沒有辦法用php 寫一個ddos防止?比如說一秒請求超過三次?

阅读 3.7k
3 个回答

可以結合redis的pSetEx函數於session來做。用戶訪問的時候,根據頁面標識和uuid生成一個redis的key,並把uuid保存session,然後頁面第二次訪問從session中取出uuid,去redis裏面檢索,如果檢索到就自增1.檢索到的值超過時間段內最大請求次數就返回失敗。

PHP 防 DDOS ?你仿佛在逗我。

粗略来说,一个请求到达 PHP 脚本的顺序是这样的:

防火墙 > 网页服务器 > PHP程序

正常来说,防 DDOS 应该在防火墙这个层面实现,再不济也应该是在网页服务器实现。

到了 PHP 这一步,不用防了,防不了的。

PHP上防已经没有用了,因为你已经响应请求了。
要防D,只能是连请求都丢,那就需要在http服务之前有个防护,例如各种云防护套餐。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题