• 卡农-四声部人声自拍 订阅本博客

    如何订阅博客?
  • Blog首页关于和平海底Blog存档联系自由勇网站地图友情链接

  • 博客防spam/陌生人恶意留言另一方案

    王志勇 发表于 2009年10月12日 18:37

    防spam的规则,通常不会冲突,规则越多,越减少spam。如果你有时间,一个博客可以设置几条,几十条规则。如之前的规则,http://www.auiou.com/relevant/00000564.jsp,已经可以很有效地防止spam。因为博客是个人博客,再加上判断的程序仅在用户发送表单时才会生效,只要规则不是很多,可能不会影响博客的速度。如果你的博客或者论坛访问量很大,留言数很多,可以将多条规则用include()函数将程序分开,当符合条件时才会调用相应的程序,这是PHP的一大优点,不符合条件不会调用,可有效地大大提高程序的速度。

    网友的绝大多数留言都是友好的。如果博客中偶尔出现一条陌生人的恶意留言,可能会影响博主的心情,如果在意,会与这些发布恶意留言的网友的命运发生牵连,与他们的业力发生牵连。留言者,没有权利审判别人。如上面的链接中的方法,可以直接封闭IP。

    可以给博客建立留言的安全级别分类,建立信任级别列表,在程序上实现起来较容易。信任级别列表如下:

    1. 好友的用户名列表。当用户留言时,如果用户名存在于好友列表中,直接显示留言,或者直接进入审核后台。
    2. 好友的URL列表,就是网友留言的网址,判断方法同1。
    3. 陌生人不需要建立列表。只要不存在于所有建立的列表中,则判断为陌生人。对陌生人的留言,可以自由设置留言条件,比如弹出验证码;或者稍紧急时弹出复杂的验证码,提高留言的门槛。可以建立一个变量如$aa,由$aa来控制安全级别。当$aa==5,表示稍紧急时刻,这样维护博客时不用修改程序,只要在建立的后台网页中改变$aa的值。
    4. spam的用户名列表、URL列表。
    5. 封IP的用户名列表、IP列表。

    上述一共有6个列表,分别是好友的用户名列表、好友的URL列表、spam的用户名列表、URL列表、封IP的用户名列表、IP列表。建立的方法是整个列表作为一个字符串,用“|”符号可巧妙地判断用户的关键字是否在其中,这样不用循环程序,用strpos()函数就可以一次判断完成。例如好友的URL列表是:

    |www.abc.com|wwww.auiou.com|www.cctv.com|www.ad.com|
    假设上面这一行的值是$ac,用户留言时的URL是http://www.abc.com。

    其它的列表都是如法炮制,注意最前面和最后的“|”不要省略。然后,使用strpos()函数判断www.abc.com是否在$ac的方法是:

    <$url="www.abc.com";
    $ur5="|".$url."|";
    if (strpos($ac,$ur5)){} //此语句表示$url是否在$ac其中。
    ?>

    这里在$url左右两边各加了一个“|”的符号,就可以准确判断。其它列表的建立和判断方法,都是一样的。http://www.abc.com去掉http://的方法如这里的2、3楼的回复,http://www.auiou.com/relevant/00000466.jsp。

    附:这里有一种很特殊的情况,使用strpos()直接使用if (strpos($ac,$ur5)){}的形式,而无需使用if (strpos($ac,$ur5)!==false){},程序不会出错,是因为从第2个字符开始是URL列表。假如用户的URL如www.abc.com位于URL列表的第1个网址,那么strpos($ac,$ur5)的值是1。

    6条评论:
    1   唏嘘一世 2009-10-12 20:41
    我用的第1种方式对评论进行自动审核,不过可能过些时间后改为验证邮箱地址的方式。
    网友昵称和邮箱地址,在博客的评论中,一般是固定不变的。当出现新的(陌生的)昵称或邮箱时,加入审核的列表,非常管用。
    2   华晨 2009-10-13 22:20
    有问题呀!如果网址中有|怎么办呢?不是乱了么?
    还有,如果好友列表很长很长,最长的字段类型都储存不了了怎么办?
    而且当好友列表长了以后,每次把这个列表提取到内存中需要的内存就会越来越大的,所以我觉得这个方案有待改善。
    3   自由勇 2009-10-14 08:40
    上述都是可以解决的,速度是优先考虑的因素。
    4   第一先生 2009-10-15 11:45
    我就不发表了 赞一下吧
    5   吴熠 2009-10-15 14:41
    个人觉得:越是严格的审核,越不利于用户快捷的使用和体验。
    6   华晨 2009-10-17 18:28
    @吴熠
    不敢苟同,都是垃圾评论的网页用户体验就好么?

    发表评论:
    名字: (*必填)
    博客: (可省,仅限于Blog地址)
    验证码: s48p58a68c78e88c98r108a118f128t138 (*必填)

    正文:

      记住信息? 是 否

    直接发送Trackback到此文章

    说明:本评论系统不支持HTML代码。(您的留言需要审核,审核规则请见这里。)

     (点击申请)

    文章分类 Category:
    Blog的发展 Development
    为什么写博客 W-do we Blog
    互联网 Internet
    社会 Society
    教育 Education
    BBS社区研究 Community
    编程 Program
    友人 Younet
    QQ研究 QQ Research
    公告 Announcement

    最新的评论 Comments:
    » 毁谤别人的匿名者
    » 一家门户网站的博客管理
    » Entropay(欧贝
    » 又一位不可思议的扮音天
    » Google搜索结果在
    » 声卡无声硬件排除一例
    » 如何关闭ixwebho
    » 今天值得纪念的数字

    近期的主题:
    2012-01-26:多了解一些信息没有坏处
    日益低效的快递
    关于香港地铁吃东西事件的翻译
    2012-01-15:怜悯和爱
    惨不忍睹的网站空间(人为造成)
    QQ空间不能发表日志/说说/微博解决一例
    新年的钟声敲响了
    惠州之印象
    2011-10-20:最近4个不好的用户体验
    女童遭辗压无人帮助视频之感想
    网络才是真实的,现实一切都是幻象
    本博客的程序有发布的计划
    真正的神曲和一些圣乐分享和回顾
    Go Daddy的97.74 IP段又被大规模killed
    时间过得很快
    国外的域名查询也不安全
    祝我31周岁生日快乐
    有关国内近两年史无前例的清晰的UFO
    Android(安卓)平板电脑的使用体验
    2011-08-24:经验 & 近期动态
    2011-08-03 养花
    2011-06-18
    2011-06-02:同龄人年轻程度却相差10岁
    2011-05-28:随谈(浅谈)中英文输入速度
    Go Daddy空间切换系统更换IP时现在需要慎选4GH主机
    2011-05-18:随谈现实与理想(8)
    随谈:2011-05-18 贴吧与新闻评论的管理
    随谈:2011-05-13 心情很沉重很沉重
    随谈:2011-05-08 有良知的人会提升
    博客不应大量转载
    随谈:2011-04-28 通过网络调查真相当中的一个途径之一
    有关UFO与2012的谦卑交流与解答(1)
    cPanel的主机网页长时间500错误解决一例

    王志勇(自由勇):程序设计。
    公历1980-09-26 天秤座 32岁
    联系我:信息反馈、留言板。

    版权声明:本博客所有文章,均符合原创和创作共用的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

    与此相关的链接
    和平海底2 | Auciou | 自由勇专栏
    公益:UFO与真相研究交流区
    Gratitude | Time

    Blog存档 Archives

    2012年01月(N)
    2011年10月(8)
    2011年09月(4)
    2011年08月(2)
    2011年06月(2)
    2011年05月(6)
    2011年04月(10)
    2011年03月(16)
    2011年02月(16)
    2011年01月(15)
    2010年12月(12)
    2010年11月(9)
    2010年10月(3)
    2010年05月(4)
    2010年01月(7)
    2009年12月(10)
    2009年11月(4)
    2009年10月(8)
    2009年09月(24)
    2009年08月(20)
    2009年07月(6)
    2009年06月(11)
    2009年05月(16)
    2009年04月(20)
    2009年03月(29)
    2009年02月(18)
    2009年01月(15)
    2008年12月(17)
    2008年11月(10)
    2008年10月(13)
    2008年09月(8)
    2008年08月(4)
    2008年07月(5)
    2008年06月(9)
    2008年05月(12)
    2008年04月(15)
    2008年03月(26)
    2008年02月(22)
    2008年01月(29)
    2007年12月(30)
    2007年11月(28)
    2007年10月(30)
    2007年09月(8)
    2007年08月(8)
    2007年07月(21)
    2007年06月(23)
    2007年05月(31)
    2007年04月(34)
    2007年03月(29)
    2007年02月(18)
    2007年01月(41)
    2006年12月(23)
    2006年11月(10)
    2006年10月(10)
    2006年09月(29)
    2006年08月(33)
    2006年07月(17)
    2006年06月(30)
    2006年05月(4)
    2006年01月(3)
    2005年09月(4)


  • Copyright © 2006-2012 auiou.com All rights reserved.
    此Blog程序由王志勇编写