详细ASP获取用户真实IP代码

正常情况这样就能取得客户端的ip地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 ip 地址,而不是真正的客户端 ip 地址,要想透过代理服务器取得客户端的真实  ip 地址,就要使用微软公司在一般asp教程技术文档中并未公布的request.servervariables("http_x_forwarded_for") 来读取,但是需要注意的是:如果客户端没有通过代理服务器来访问,那么用 request.servervariables ("http_x_forwarded_for") 取到的值将是空的。因此,如果要在程序中使用此方法,可以这样处理:

<html>
<head>
<title>欢迎访问本网站</title>
</head>
<body>

<% ip_address=request.servervariables ("http_x_forwarded_for")
     if ip_address=""      then
    ip_address= request.servervariables ("remote_addr")

</body>
</html>

即:如果客户端通过代理服务器,则取 http_x_forwarded_for 的值,如果没通过代理服务器,就取 remote_addr 的值。

下面看一款真实实例

function get_cli_ip()'取真实ip函数,先 http_client_ip 再 http_x_forwarded_for 再 remote_addr
dim client_ip
if checkip(request.servervariables("http_client_ip"))=true then
get_cli_ip = checkip(request.servervariables("http_client_ip"))
else
myarray = split(request.servervariables("http_x_forwarded_for"),",")
if ubound(myarray)>=0 then
client_ip = trim(myarray(0))
if checkip(client_ip)=true then
get_cli_ip = client_ip
exit function
end if
end if
get_cli_ip = request.servervariables("remote_addr")
end if
end function

时间: 2024-10-26 06:52:28

详细ASP获取用户真实IP代码的相关文章

asp获取用户真实IP地址的方法

 一般的程序都具备获取用户IP地址的命令,但是我们访问网站有两种一种是我们这种普通用户,一种是使用代理IP上网的用户,下面我来介绍介绍.   在asp中获取用户IP地址我们最简单的获取方法就是使用  代码如下   Request.ServerVariables("REMOTE_ADDR") 但是如果用户使用了代理服务器IP地址就不对了,但我们可通过  代码如下   Request.ServerVariables("REMOTE_ADDR") 结果上面的两个获取IP的

获取用户真实IP地址代码

获取用户真实IP地址代码 Public Function GetIp(getType)   If getType = 0 then    GetIp = Request.ServerVariables("HTTP_X_FORWARDED_FOR")    if GetIp = "" Then getIp = Request.ServerVariables("REMOTE_ADDR")   ElseIf getType = 1 Then    Ge

Nginx阻止用户代理及nginx获取用户真实IP地址

Nginx阻止用户代理 有些时候,需要阻止某些用户代理访问网站,比如ab,wget,curl等等,这就需要使用到$http_user_agent变量. 修改nginx.conf if ($http_user_agent ~* (Wget|ab) ) {    return 403; }   if ($http_user_agent ~* LWP::Simple|BBBike|wget) {             return 403; } 重启nginx # /usr/local/nginx-

多款获取用户真IP代码

多款获取用户真IP代码是一款通过php自带的环境变量来判断再取得用户的真实IP地址,好了看看那款适合你吧. 1: <?php if(getenv('HTTP_CLIENT_IP')){  $onlineip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR')){  $onlineip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR'))

PHP获取用户真实 IP , 淘宝IP接口获得ip地理位置

自己不需ip库,免更新.  淘宝IP库: http://ip.taobao.com  多谢5楼提醒   ​ /**  * 获取用户真实 IP  */ function getIP() {     static $realip;     if (isset($_SERVER)){         if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){             $realip = $_SERVER["HTTP_X_FORWARD

Java中使用HttpRequest获取用户真实IP地址_JSP编程

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid,nginx等反向代理软件就不能获取到客户端的真实IP地址了. 如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为 http://www.jb51.net / 的URL时,用request.getRemoteAddr()方法获取的IP地址是:127.0.0.1 或 192.168.1.110

阿里云场景下获取用户真实 IP

前言 获取用户的真实 IP,对于安全业务来说非常重要.阿里云场景下一个Http 请求一般为: 用户IP --> Ddos 高防 IP ->SLB IP 背景 对于WEB服务器来说,主要是通过两种方式获取 IP 与服务器建立TCP连接的地址 Remote Address 通过 Http Header 的 X-Forwarded-For 字段 对应的 PHP 变量如下 $_SERVER['REMOTE_ADDR'] // 与服务建立TCP连接的IP $_SERVER['HTTP_X_FORWARD

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

<% '****************************** '函数:GetUserTrueIP() '参数:无 '作者:阿里西西 '日期:2007/7/13 '描述:取得用户真实IP,对代理地址仍然有效:返回值:文本类型的IP地址 '示例:<%=GetUserTrueIP()%> '****************************** Function GetUserTrueIP()    dim strIPAddr    If Request.ServerVariab

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

<% '****************************** '函数:GetUserTrueIP() '参数:无 '作者:阿里西西 '日期:2007/7/13 '描述:取得用户真实IP,对代理地址仍然有效:返回值:文本类型的IP地址 '示例:<%=GetUserTrueIP()%> '****************************** Function GetUserTrueIP()    dim strIPAddr    If Request.ServerVariab