作者:蕾仔 出处:ltroy@163.com加入时间:2007-10-5 15:40:15
本站从5月份开始就有垃圾信息留言出现,刚开始是一天一两条,
后来是一天十几二十多条...
实在受不了了..
做了许多实验..发现垃圾信息都以 http://www.leizai.com/book/write.asp?key=friend
地址点击过来发垃圾广告的
(本站留言进口有三个,一是友情连接,二是文章评价,三是普通留言,刚那个是从友情连接进来的)
所以可以跳过我之前最初的防垃圾信息代码
最初的代码如下:
'################# 防护垃圾信息写入
ab_C=Cstr(Request.ServerVariables("HTTP_REFERER"))
ab_D="http://www.leizai.com/book/write.asp" '
ab_F=len(ab_D)
if left(ab_C,ab_F) <> ab_D then '判断是否从本站点击进来的
Response.Write "<script language=JavaScript>" & chr(13) & "alert('不可以乱发广告!');" & "javascript:history.back(1);" & "</script>"
Response.end
end if
'#################
以上代码失效诂计是发垃圾信息程序用了,来访地址欺骗骗过了这段代码的。
知道它的原理之后。。这就好应对了。。呵呵
在发表留言的源码里加入以下代码:(如本站的 /book.asp)
session("guest")="ok" '防垃圾写入
然后在接受处理信息的页面加下以下代码:(如本站的 /book/run.asp)
'################# 双重防护垃圾信息写入
ab_C=Cstr(Request.ServerVariables("HTTP_REFERER"))
ab_D="http://www.leizai.com/book/write.asp" '这里改成自己实际网址
ab_F=len(ab_D)
if left(ab_C,ab_F) <> ab_D or session("guest")<>"ok" then '加了session验证这下可以了吧
Response.Write "<script language=JavaScript>" & chr(13) & "alert('不可以乱发广告!');" & "javascript:history.back(1);" & "</script>"
Response.end
end if
'#################
以上两段代码最好加上代码的前面,免得处理完信息内容后,再防就失败了。。
经过三四个月实验。。哈。。时间算长了吧。。
没有一条垃圾信息进来。。
(当然。。除了你手工写进的。。 = =" 要是这样。。可真无聊。。)
其实还有用验证码能防这些垃圾信息的(防垃圾最强的)。。
但看起来好复杂的说。。
还有别人好不容易来留言。。
还要客人去认那个看不清楚的验证码。。晕死了。。
不知道公布这段代码后是否垃圾信息也会改进呢。。。哈哈