Asp获取真实IP地址,最简单可用一句话获取:
ip=request.ServerVariables("REMOTE_ADDR")
response.Write(ip)
但这种方法对代理服务器上网的就不准了,故比较全面的是用下面的方法:取得用户真实IP,对代理地址仍然有效;返回值:文本类型的IP地址
<% '****************************** '函数:GetUserTrueIP() '参数:无 '作者:阿里西西 '日期:2007/7/13 '描述:取得用户真实IP,对代理地址仍然有效;返回值:文本类型的IP地址 '示例:<%=GetUserTrueIP()%> '****************************** Function GetUserTrueIP() dim strIPAddr If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 Then strIPAddr = Request.ServerVariables("REMOTE_ADDR") ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 Then strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1) ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 Then strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1) Else strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR") End If GetUserTrueIP = Trim(Mid(strIPAddr, 1, 30)) End Function %>其他网友的补充
<%Private Function getIP()Dim strIPAddrIf Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 ThenstrIPAddr = Request.ServerVariables("REMOTE_ADDR")ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 ThenstrIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1)ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 ThenstrIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1)ElsestrIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR")End IfgetIP = Trim(Mid(strIPAddr, 1, 30))End Functionip=getIP()response.write(ip)%>得到真实IP
Function GetReallyIP() Dim strIP strIP=Request.ServerVariables("HTTP_X_FORWARDED_FOR") If strIP="" Or InStr(strIP,"unknown") Then strIP=Request.ServerVariables("REMOTE_ADDR") ElseIf InStr(strIP,",") Then strIP=Split(strIP,",")(0) ElseIf InStr(strIP,";") Then strIP=Split(strIP,";")(0) End If GetReallyIP=Trim(strIP)End Function以上就是asp 取得用户真实IP,对代理地址仍然有效的函数的详细内容,更多关于asp真实IP的资料请关注其它相关文章!