主页 > 知识库 > asp 取得用户真实IP,对代理地址仍然有效的函数

asp 取得用户真实IP,对代理地址仍然有效的函数

热门标签:电子围栏 银行业务 Linux服务器 团购网站 Mysql连接数设置 服务器配置 科大讯飞语音识别系统 阿里云

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 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
getIP = Trim(Mid(strIPAddr, 1, 30))
End Function
ip=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的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
  • 做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
  • 做了CDN加速的ASP网站获取用户真实IP程序
  • ASP如何获取真实IP地址

标签:衡水 萍乡 衢州 大理 蚌埠 江苏 枣庄 广元

巨人网络通讯声明:本文标题《asp 取得用户真实IP,对代理地址仍然有效的函数》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266