你被刷量了,然后呢?
刚收到后台提醒:昨天首页流量涨了三倍,点开一看,转化率直接腰斩——订单没多一个,咨询也没多一条。别急着庆祝,这大概率不是爆款来了,是有人往你网站里灌水。
我帮几十个站长擦过这种屁股:有的被刷到百度收录乱码页面,有的被拖垮服务器,还有的误删真实流量,越救越糟。今天不讲大道理,只说你能马上用上的清洗和恢复步骤。
怎么判断你是被刷了,还是真爆了?
刷量和真实爆发,行为模式完全不同。
刷量的流量,来得快、停得急、动得少。比如某个页面突然暴涨,但用户平均停留时间不到5秒,跳出率冲到95%以上,基本可以确定是机器在点。
真实用户会翻页、会搜索、会在商品页反复看参数;机器人只会打开→加载→关闭,连滚动条都不碰一下。
我处理过一个本地生活类网站,某天“美食推荐”栏目流量翻了四倍,结果发现98%的访问IP都来自同一个IDC机房,且集中出现在凌晨2:17–2:23之间。老板还以为是抖音导流爆了,结果三天后,百度把该栏目所有页面降权,连带首页权重下滑。
另一个硬指标:看行为链路。如果流量涨了,但注册、加购、表单提交这些动作纹丝不动,甚至比平时还少——那不是冷启动,是空跑。
刷量攻击的3种常见套路,你中过几个?
第一种:代理IP轮刷
攻击者用成千上万的代理IP模拟真人访问,IP看着正常,但User-Agent露馅了。比如一批请求全写着 Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.22 Safari/537.36——这浏览器版本早在2016年就停更了。查Nginx日志,同一User-Agent出现频次异常高,基本就是脚本在扫。
第二种:冒充搜索引擎爬虫
它假装是Baiduspider或Googlebot,但IP不在官方白名单里。这类攻击最坑:搜索引擎信以为真,疯狂收录你被刷出来的垃圾URL(比如 /product?id=123456789&ref=xxx 这种带随机参数的),反而把真实内容挤出索引。验证很简单:拿到可疑IP,去百度站长平台查“抓取异常”,或者用 nslookup 反查域名,非 baidu.com 或 google.com 子域的,一律拉黑。
第三种:前端JS注入刷量
攻击者把你网站当跳板,在页面里悄悄塞一段代码,用户一打开,浏览器就自动向第三方URL发请求。你看访问日志全是真实IP、真实UA,但页面加载明显变慢,Network面板里冒出一堆不认识的域名请求。打开开发者工具,切到 Sources 标签,搜 eval(、document.write( 或 base64字符串,往往就能揪出猫腻。
清洗脏数据的4个实操方法
第一步:用CDN或防火墙限速封IP
别手动一条条封。登录你正在用的CDN控制台(比如阿里云CDN、腾讯云CDN或Cloudflare),进“访问控制”→“频率控制”,设一条规则:单IP每分钟请求超过30次,自动拦截。Nginx用户可以直接加 limit_req zone=burst_limit burst=20 nodelay;,比写黑名单更省事,也防得住IP池轮换。
第二步:筛掉可疑User-Agent
在CDN的“自定义规则”或Nginx配置里,加一条UA过滤:屏蔽含 python-requests、curl/7.、scrapy、http-client 的请求。注意别误伤Baiduspider——它的UA里一定带 Baiduspider 字样,Googlebot一定带 Googlebot,保留这两类就行。
第三步:加轻量级真人检测
不用搞复杂验证码。在关键落地页(比如注册页、下单页)底部加一段JS:监听鼠标移动、页面滚动、键盘输入。如果用户加载页面后10秒内没有任何交互,就停止上报GA/神策/友盟等统计代码。几十行代码就能搞定,FingerprintJS开源版够用,连后端都不用动。
第四步:用日志工具找规律
打开你已经在用的GoAccess、AWStats或宝塔面板里的“网站日志分析”,看最近24小时的访问TOP URL。如果某个带随机参数的URL(如 /api/track?sid=xxxxx)请求量是其他页面的20倍以上,且来源IP高度重合,直接把它从统计报表里排除。Python脚本不用重写,用现成的 awk '{print $1,$7}' access.log | sort | uniq -c | sort -nr | head -20 就能快速定位异常路径。
恢复网站排名和权重,别踩这3个坑
第一坑:病急乱投医,删页面
被刷的可能是你权重最高的首页或分类页。别一慌就301跳转或直接下线。先确认:这个页面本身有没有真实用户访问?有没有外链指向?如果有,就留着,只清洗数据。删了等于主动放弃排名。
第二坑:乱用301重定向
看到一堆刷出来的垃圾URL(比如 /product.php?id=1234567890),别一股脑301到首页。搜索引擎会判定你在“隐藏低质内容”,惩罚加倍。正确做法:对确认无价值的URL,返回HTTP状态码 410 Gone;对正常页面被刷,保持200状态,只清理统计和日志。
第三坑:没清干净就急着申诉
百度站长平台、Google Search Console的申诉入口,不是求饶按钮。它们只认一件事:你的网站现在是否稳定健康。先确保异常流量归零、日志干净、页面响应正常,再持续更新优质内容7–10天,最后提交“重新审核”。我经手的案例里,最快3天恢复,最慢也只等了12天——前提是中间没再改模板、没批量删页、没堆关键词。
刷量攻击后,多久能恢复?
没有标准答案。轻度攻击(比如单日几百次异常请求),清洗后2–3天,数据曲线就平了;重度攻击(持续多日、覆盖主站核心页面),可能需要2–4周让搜索引擎重新信任你。
关键是稳住节奏:别因为刷量就停更,也别为了“补权重”硬凑低质内容。你原来一周发3篇干货,继续发;原来每天更新产品信息,照常更新。搜索引擎要的不是速度,是可预测的、真实的运营状态。
还有人想换域名重来?千万别。你老域名积累的外链、历史收录、品牌搜索量,都是钱买不来的资产。清洗干净,坚持更新,权重会自己回来。
今天就能做的1个操作:设置实时流量突增警报
打开你正在用的CDN控制台(阿里云CDN / 腾讯云CDN / Cloudflare),找到“监控告警”或“用量告警”设置,新建一条规则:
✅ 监控维度:单个URL的5分钟请求数
✅ 触发条件:超过过去7天该URL日均请求量的2.5倍
✅ 附加条件:同时满足“来源国家/地区集中在单一区域”
✅ 通知方式:绑定你微信或手机,触发即发消息
这条规则5分钟就能配完。它不会阻止攻击,但能让你在刷量刚开始的第3分钟就收到提醒——这时候封IP、限速、查日志,损失能压到最低。
现在就去,别等下次。