use*_*744 5 wiki mediawiki spam-prevention spam
我的wiki上有500个左右的垃圾邮件程序和大约5个实际注册用户.我用nuke删除了他们的页面,但他们只是继续重新发布.我使用reCaptcha控制了spambot注册.现在,我只需要一种方法一次删除/阻止/合并约500个用户.
您可以user手动删除表中的帐户,或者至少使用以下查询禁用其身份验证信息:
UPDATE /*_*/user SET
user_password = '',
user_newpassword = '',
user_email = '',
user_token = ''
WHERE
/* condition to select the users you want to nuke */
Run Code Online (Sandbox Code Playgroud)
(替换/*_*/为你的$wgDBprefix,如果有的话.哦,并先做备份.)
擦除user_password和user_newpassword字段会阻止用户登录.同时擦除也会user_email阻止他们通过电子邮件请求新密码,并且擦除user_token会删除他们可能拥有的任何活动会话.
更新:自从我第一次发布此消息以来,我已经有了从MediaWiki安装中清理大量垃圾邮件用户和内容的更多经验.我已经记录了我使用的方法(基本上包括首先删除数据库中的用户,然后擦除所有现在的孤立修订版,最后运行rebuildall.php来修复链接表)在Webmasters Stack Exchange上的这个答案中.
或者,您可能还会发现Extension:RegexBlock有用:
"RegexBlock是一个扩展,它添加了一个特殊页面,其中包含使用正则表达式阻止,查看和解锁用户名和IP地址的界面."