PHP 如何应对较高并发, 1 秒钟 3000-5000 次

2017-07-13 16:11:20 +08:00
 tianxiacangshen
流量不是很多,每天 12000 ip 32000pv,但是这几天有些坏人一直在发动并发访问,对方找到网站上的所有 post 之后,利用几个 ip 不断访问 post 页面,一秒钟 3000-5000 次,添加了验证码,但是验证码好像失效了,这样没达到攻击级别,但是却让 cpu 长期 100%,导致网站很卡。

这种情况怎么办?
5372 次点击
所在节点    PHP
29 条回复
xiaowu365
2017-07-13 16:12:19 +08:00
百度云加速
tianxiacangshen
2017-07-13 16:15:26 +08:00
@xiaowu365 是英文站,用了 cloudflare 的 pro 版,
alex321
2017-07-13 16:18:26 +08:00
Nginx 负载均衡下。。。自动脚本分析每秒超过 5 次 post 的 IP 添加到 Nginx 的 black list。
sydra
2017-07-13 16:18:30 +08:00
全局增加一个根据 ip 的访问时间间隔限制不就好了.
hosea
2017-07-13 16:20:13 +08:00
属于被攻击防御范畴的问题了吧。。建议先封 ip。。然后配置 server 层面的访问拦截
nullen
2017-07-13 16:33:31 +08:00
nginx 有 rate limit 模块,可以试试看先?
andrewDDC
2017-07-13 16:34:49 +08:00
nginx +lua + iptable 设置一下规则,超过的直接 drop 掉
yghack
2017-07-13 16:39:02 +08:00
waf
wwek
2017-07-13 16:48:45 +08:00
继续挂在 cloudflare 下
自己用 nginx +lua 做二次清洗
we3613040
2017-07-13 16:55:05 +08:00
按照 ip 做限制,对方换代理也需要成本的
wujunze
2017-07-13 16:58:23 +08:00
这个属于被 CC 了 用 Nginx 限制一下
yylzcom
2017-07-13 17:03:13 +08:00
之前遇到过
nginx+fail2ban 禁用 ip24 小时
windfarer
2017-07-13 17:03:49 +08:00
打回去。。
towser
2017-07-13 17:10:34 +08:00
去搜防 CC 脚本,一抓一大把 ,调试好了后台跑在服务器上,其他什么都不用管。
lan894734188
2017-07-13 18:48:05 +08:00
redis cache 静态化 php7
jellybool
2017-07-13 19:34:59 +08:00
这种情况跟我之前遇到的好像....nginx + lua 可以的,基本就是分析特征,匹配(不管是 ip 或者 agent 或者 header ),然后处理掉就好……
cst4you
2017-07-13 19:37:29 +08:00
cc 还是好防的, 针对对方攻击的方式做限制就好
a570295535
2017-07-13 19:46:29 +08:00
虽然我不懂啥技术,但是我的评论框提交评论后会有 15 秒的等待时间,
还有就是对页面刷新时间进行限制,这样清净不少。。。
ddou
2017-07-13 21:26:20 +08:00
oldgun
2017-07-13 21:52:06 +08:00
干掉就好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/375095

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX