当前位置: 首页 > 图文教程 > 网络编程 > PHP > Discuz!用户怎样减少广告灌水机的骚扰

PHP
PHP实例教程:Output Control输出函数
memcached和mysql主从环境下PHP开发
基于LAMP架构设计的WEB框架
PHP代码:验证IPV6地址是否合法的正则
PHP环境快读搭建绿色软件包PHPnow
PHP教程:$_SERVER的详细参数整理
php获取url字符串截取路径的文件名和扩展名的函数
在命令行下运行PHP脚本[带参数]的方法
PHP 实用代码收集
PHP 时间转换Unix时间戳代码
关于php fread()使用技巧
PHPMailer 中文使用说明小结
php addslashes和mysql_real_escape_string
php cout<<的一点看法
PHP 变量的定义方法
php学习之 认清变量的作用范围
php 静态变量与自定义常量的使用方法
认识并使用PHP超级全局变量
通过具体程序来理解PHP里面的抽象类
php读取xml实例代码

PHP 中的 Discuz!用户怎样减少广告灌水机的骚扰


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 28 ::
收藏到网摘: n/a

问:我们的论坛用的是Discuz!,访问量很大,最近一直受到广告灌水机的骚扰。所以我想找到一个好的论坛广告管理机制,不知道有没有更好的解决方案?目前,我找到的解决方案似乎,用后台的管理功能,限制用户发帖时间,每隔一定时间(比如多少秒)才能发表一张帖。不过,这样的限制如果设置的时间大于5秒,也会妨碍了正常的用户访问,发广告的灌水工具来发根本没有影响,因为它是自动的。请问该怎么样解决?

答:关于广告灌水机的问题,我们都是深恶痛绝的。一般而言,广告的灌水工具(或发帖机器)现在都能内容相同但标题不同(添加特殊字符、随机串或多余空格的方式),因此,从论坛软件来说,根据内容对帖子限定是无效的。并且,采用这种机制,程序对数据库的压力极大,站长的硬件资源也将消耗很多。因此,Discuz!考虑到最终效果得不偿失,所以未予实施上述办法。

当然,Discuz!也不会放弃寻找更好的办法。目前,用户采用最新版本的Discuz!4.1,可以寻找的解决方案有两个:
一是采用发帖验证码;二是采用更长的灌水限制时间。
此外,Discuz!拟将在5.0中采用如下方案(www和wap上都要限制):
同一用户(假定不为游客)最近一小时(或一天)发帖数限制(标明影响效率)“maxppd(maxpostsperday)
 if($discuz_uid) {SELECT COUNT(*) FROM cdb_posts WHERE dateline>'$timestamp'-86400 AND authorid='$discuz_uid'
 }”

一般而言,这样应该可以更有效解决广告灌水的问题。
不过,考虑到Discuz!应用面的广泛,那些灌水机也一定不断寻找新的办法来骚扰。所以,我们需要更多的用户与我们一起去解决问题。