wangsisi 发表于 2010-12-23 16:37:32

Anti-spam

内容屏蔽黑名单

为防止大量广告内容被保存,可使用'$wgSpamRegex'变量(老版本Mediawiki中为'$wgSpameBlacklist')。在LocalSettings.php中为这个变量设置一个正则表达式,用以匹配网址中出现的限制字符串。同时,这个功能也可用于防止文本中出现其他希望限制的内容。

当保存页面并碰到限制内容时,用户会被提示被禁止的相关内容。

$wgSpamRegex设置范例

在LocalSettings.php文件中输入如下内容:

#当下述正则表达式在编辑内容中得到匹配时,编辑将被禁止
$wgSpamRegex = "/shit|fuck|viagra|adult-website\.com|overflow:\s*auto;\s*height:\s*px;/i";

以上仅为一则示意,其中'/i'表示进行大小些无关的检查。

这个例子中,任何引用'adult-website.com'的文本将被禁止。很明显,这种办法很容易防止特定spammer反复前来捣乱。

最后,这个例子同时还可以阻止一些近来出现的CSS类型的隐藏内容spam攻击。

更长的spam黑名单

用上述办法对付大量spam有些不便,更好的办法是建立一份更长的网址黑名单文本,而非使用正则表达式。这时可以使用SpamBlacklist扩展插件,并允许少量高级用户维护一个黑名单页面。同时,你可以从外部获得黑名单资料。

清除spam的脚本工具

前面的办法只能预防未来的spam行为,但无法清除现有的spam内容。我们可以手工清理,也可以去找spam清理工具扩展插件。这是个script脚本工具,在更新spam黑名单后可以自动回退、清除所有的spam内容。它将扫描整个wiki,发现spam之后将自动恢复到spam前的版本。查看wikicities.com上的更多相关资料。

代理阻挡器

Mediawiki1.4.1具有代理阻挡功能,用以防止滥用公开代理。很多spammer使用公开代理来掩盖身份,并防止IP被封禁。参见元维基上的介绍

rel=nofollow链接属性

Mediawiki使用rel=nofollow链接属性。这可以防止google沿外部链接继续搜索,从而大大削弱spam的实际效果。然而nofollow没有外观上的不同,spammer并不一定注意到他们在做无用工,因而不能完全禁绝spam现象。

在当前设定下,所有外部链接以及日志、历史页面都被设为nofollow属性。参见禁止索引的历史。注意,开启nofollow是个相当沉重的anti-spam手段,你可以自行决定是否使用。建议使用当前的设置,因为这对很多精力有限的站长而言,能大大减轻来自spam的压力。
页: [1]
查看完整版本: Anti-spam

BlueHost美国主机优惠码