你刚发完一篇干货满满的长文,正等着读者来互动——结果刷新评论区,满屏都是“顶!”“支持!”“博主666”,连真实提问都被盖在底下。更糟的是,搜索引擎可能已经悄悄给你贴上了“低质站点”的标签。别急,这不是你的内容不行,是有人在偷偷往你家门缝里塞小广告。

评论垃圾到底从哪钻进来的?3个你忽略的入口

垃圾评论不是乱撞进来的,它们专挑你没锁好的门缝往里钻。很多人一上来就堆验证码,结果后台照样被灌水。

第一个入口是注册环节
很多网站允许开放注册,但对用户名不设限。垃圾程序就爱用“seo-service-2024”“admin888”这类名字批量建号,注册完立刻开刷评论。你只要加一条简单规则:用户名必须含中文或英文字符,禁止纯数字+符号组合,就能卡住一大半。

第二个入口是评论表单的隐藏字段
真人看不到那些 type="hidden" 的输入框,但机器会老老实实填。我帮一个知识类博客改过,他们在表单里加了个叫 nickname 的隐藏字段,还预填了默认值。结果所有填了这个字段的提交,一律拦截——因为真人根本不会动它。这招上线后,垃圾评论当天就少了大半。

第三个入口是旧文章的评论池
新文章有人盯,老文章却常年开着评论口子,成了垃圾程序的“自助餐区”。建议给发布超三个月的文章自动关闭评论,或者统一设成“需审核才显示”。不用全关,但得让老内容也守规矩。

为什么“验证码”拦不住专业垃圾?看看这个案例

reCAPTCHA v3 确实聪明,但它防的是随手点点的机器人,不是冲着你来的“职业选手”。

去年我帮一个电商博主排查,他用了 v3,可每天还是收几百条带链接的垃圾评论。我扒了服务器日志才发现:这些请求全来自同一个数据中心的IP段,而且提交时间间隔精确到毫秒——人不可能打字这么齐整。

后来我们做了两件事:

  • 在 Nginx 层加了限制:每个 IP 每小时最多发 3 条评论,超了直接返回 403;
  • 在评论提交逻辑里埋了个 3 秒等待:程序会跳过,真人用户根本感觉不到卡顿。

做完这两步,垃圾评论当场清零。

这事说明白一点:验证码只是门帘,真正的门锁在服务器端。比如检查 User-Agent 是不是明显伪造的、提交时间是不是总在凌晨三四点、鼠标轨迹有没有人类才有的微小抖动——这些细节,才是机器绕不过去的坎。

5个不花钱的技术手段,从源头切断垃圾

你手头现成的后台和插件,就够用了。

手段1:开启“先审核后显示”
很多人嫌麻烦,怕影响互动率。其实可以折中:设置“评论需审核才显示”,再勾选“已通过审核的用户,后续评论免审”。新号第一条评论卡一下,老读者照常发言。我试过,光这一项,垃圾量就掉了一大截。

手段2:用“黑名单关键词”做第一道筛子
“免费”“加微信”“点击领取”“buy now”“cheap”……这类词几乎不出现在真实讨论里。后台填上它们,系统自动扔进垃圾箱。别贪多,先列 10 个最常出现的,够用。

手段3:限制每条评论的链接数
真人分享参考链接,通常就 1 个;垃圾评论动不动塞 4–5 个外链。后台设成“每条评论最多允许 1 个链接”,超了直接拒。

手段4:强制填写邮箱,并做基础校验
勾选“评论者必须填写邮箱”,再加一行判断:如果邮箱里没有 @.,直接拦截。像 test@test.com 这种假地址,机器最爱填,但一校验就露馅。

手段5:启用 Akismet(WordPress 免费版)
它不靠规则硬扛,而是用全球用户上报的垃圾样本实时比对。我自己博客开了三年,只漏过一次——还是因为那条评论刚好绕过了所有常见特征。免费版完全够中小站点用。

遇到顽固垃圾怎么办?3步手动清剿策略

如果常规手段都试过了,垃圾还在冒,那大概率是有人专门盯上你了——换IP、调参数、伪造浏览器指纹,全活儿都干。

第一步:顺藤摸瓜,封掉源头IP段
去服务器访问日志里翻最近几条垃圾评论的提交记录,记下 IP。用 ipinfo.io 查查归属地,如果全是东南亚某机房或俄罗斯某 IDC 的 C 段,直接在防火墙里封掉整个网段(比如 123.456.789.0/24)。我帮一个摄影教程站这么干过,封完当天就清净了。

第二步:揪出重复模板,一键清理
垃圾评论最爱复制粘贴。“好文章!”“写得太棒了!”“支持博主!”——翻后台垃圾箱,一眼就能认出来。可以用 WordPress 自带的“批量删除重复评论”功能,或者执行这条 SQL(记得先备份):

DELETE c1 FROM comments c1
INNER JOIN comments c2 
WHERE c1.comment_content = c2.comment_content 
AND c1.comment_ID > c2.comment_ID 
AND c1.user_id = 0;

第三步:启动“人工白名单”模式
关掉所有人评论权限,只给你信任的读者(比如长期留言的老粉、合作作者)手动加进白名单。听起来麻烦,但对小而精的站点特别管用。我帮一个法律咨询博客这么干过,他们每天真实评论就三四条,人工过一遍,五分钟搞定。

长期维护:每月花10分钟做一次“垃圾体检”

防御不是一锤子买卖。垃圾程序在变,你的防线也得跟着动。

每月第一天,打开后台,花 10 分钟做三件事:

  • 扫一眼“垃圾评论”文件夹,挑出漏网的,记下它的关键词、IP、格式特征,补进黑名单;
  • 翻翻最近 24 小时的 Nginx 或 Apache 日志,看有没有新冒出来的可疑 IP 段,顺手封掉;
  • 登进插件后台,确认 Akismet 或其他反垃圾工具是不是最新版——更新规则库,就是更新你的“防弹衣”。

我坚持这个习惯三年,垃圾评论从一天上百条,到现在一个月都难见几条。关键是,它真不费事。

结尾:今天就能执行的1个操作

打开你 WordPress 后台的「设置 → 讨论」页面,勾选「评论者必须填写邮箱」和「评论需审核后才显示」;然后在「评论黑名单」里,填上“免费”“加微信”“点击这里”这三个词。做完保存,今晚再刷新评论区,你会明显感觉到不一样。