大部分企业网站都有留言功能,如果你的网站的留言内容是对外公开的,更是恶意留言、网址留言者攻击的最好目标了。一但被成为留言目标,每天几十条上百条内容大同小异的留言,做网站管理员的删留言删到你手痛,没有比这更让人深恶痛绝的了!
如果你是网站推广人员,千万不要做这种事。缺德事干多了对你的网站没有好下场!特别是这类过时了的作弊手段,被搜索引擎严重声明了N次,严重惩罚了N万个网站的情况,别干这种蠢事了。
指责归指责,还是分享一下ASP网站如何防止恶意留言、网址留言?
我朋友有一个福州家电维修的网站,挂在我们主站:http://www.whsjsoft.com/的服务器上。有一个在线报修的页面:http://www.whsjsoft.com/weixiu/essay.asp这个页面就是曾经的垃圾留言的攻击目标,每天六七十条英文网站的留言,每个单词的关键字都带链接。不需要确认,这些肯定是垃圾网站。不务正业的站长做不出什么好站来。
带链接的留言纯粹是推广为目的的留言,而且多数是群发的。相信这个留言页面现在还存在群发软件中的数据库中。要防止成为网址留言,首先要防止成为目标。你的网站相关留言页面的网页标题不要注明是客户留言之类的。因为只要一搜留言就可能找到你的网页,从而成为目标。比如福州家电维修那个留言页面改成了 在线报修、客户咨询。
其次,从技术上阻止这类留言通过验证。ASP编写的网页,在留言时肯定有输入内容那部分的表单验证吧?一般放在提交这个地方。比如代码是这样 的:<form name=”myform” action=”essaysave.asp?action=save” method=”post” onSubmit=”return CheckForm(this)”>
说明essaysave.asp文件中就有验证的程序了。在这个文件中找到下面这段代码:
sub checksave()
if Len(trim(request.form(“username”)))=0 then
result=true
wrong=wrong+”<li>用户名不能为空!</li>”
end if
if Len(trim(request.form(“letter”)))=0 then
result=true
wrong=wrong+”<li>标题不能为空!</li>”
end if
if Len(trim(request.form(“username”)))>20 then
result=true
wrong=wrong+”<li>用户名长度不能大于20个字符!</li>”
end if
if Len(trim(request.form(“letter”)))>100 then
result=true
wrong=wrong+”<li>标题长度不能大于100个字符!</li>”
end if
if Len(trim(request.form(“content”)))<2 then
result=true
wrong=wrong+”<li>内容长度不能小于2个字符!</li>”
end if
end sub
在end sub前一行加入下面代码:
if instr(request.form(“content”),”要禁止发表的内容”)>0 or instr(request.form(“content”),”www”)>0 or instr(request.form(“content”),”http”)>0 or instr(request.form(“content”),”href”)>0 or instr(request.form(“content”),”com”)>0 then
result=true
wrong=wrong+”<li>内容不合法!</li>”
end if
“要禁止发表的内容”就是你要禁止游客发表的不合法的内容,这也是必须的,否则你的网站可能被和谐掉,那就太冤了。
这语句的意思就是留言内容中如果包括”要禁止发表的内容”、www、http、href、com这类的就提示内容不合法。群发链接的留言内容一般都是这样 的:<a href=’http://www.123.com’>,所以你只要禁止www、http、href、com这类内容就行了。
如果你的站是完善的博客系统,对于评论中毫无意义的内容,直接杀无赦!列为垃圾留言,从此这个IP不能留言。打击垃圾留言者的信心。
来自:汽车维修管理软件与搜索引擎博客
转载请注明!
很好,我的网站也老是收到这种垃圾回复,谢谢楼主,学习了!