asp实现限制一个ip只能访问一次的方法 |
|
限制一个ip只能访问一次,现在将asp代码分享给大家:
<%
/////////////////////////////////////////////////////
// //
//作用:一个IP地址只允许访问本页一次 //
//引用:<!-- #include file="Check_Ip.asp" --> //
// //
/////////////////////////////////////////////////////
Response.Charset = 936 设置输出编码为简体中文
Response.Buffer = false 关闭缓冲区
Dim Fso,ts,IpList,Cfs
设置Cookies函数
Function SetCookie()
Response.Cookies("IsBrow") = "Brow"
Response.Cookies("IsBrow").Expires = Date+365
End Function
记录IP地址函数
Function WriteIp(FileName, IpAddress)
Set Fso = Server.CreateObject("Scripting.FileSystemObject")
Set ts = Fso.OpenTextFile(Server.MapPath(FileName),8,true)
ts.WriteLine IpAddress
ts.Close
Set ts = Nothing
Set Fso = Nothing
End Function
读取IP地址函数
Function ReadIpList(FileName)
Set Fso = Server.CreateObject("Scripting.FileSystemObject")
If Not Fso.FileExists(Server.MapPath(FileName)) Then
CreateFile("Iplist.txt")
Exit Function
End If
Set ts = Fso.OpenTextFile(Server.MapPath(FileName))
Iplist = ts.ReadAll
ts.Close
Set ts = Nothing
Set Fso = Nothing
ReadIpList = Iplist
End Function
创建文件函数
Function CreateFile(FileName)
Set Fso = Server.CreateObject("Scripting.FileSystemObject")
Set Cfs = Fso.CreateTextFile(Server.MapPath(FileName))
Cfs.Close
Set Cfs = Nothing
Set Fso = Nothing
End Function
关闭当前IE窗口函数(注:IE6下通过,其他浏览器未测试)
Function CloseWindow()
Response.Write "<script>window.location=javascript:window.opener=null;window.close();</script>"
Response.Redirect "http://www.baidu.com"
End Function
Ip = Request.ServerVariables("REMOTE_ADDR") 获取浏览者IP地址
Cookie = Request.Cookies("IsBrow") 获取当前Cookies
Response.Write Cookie
If Request.ServerVariables("HTTP_X_FORWARDED_FOR") <> "" Then
Response.Write "本站不允许使用代理访问"
Response.End()
Else
If Cookie = "Brow" Then
CloseWindow()
Else
If Instr(ReadIpList("Iplist.txt"),Ip) <> 0 Then
CloseWindow()
Else
WriteIp "Iplist.txt" , Ip
End If
SetCookie()
End If
End If
%>
以上就是分享给大家的asp实现代码,希望对大家的学习有所帮助 。 |