首页 > 编程 > ASP > 正文

做了CDN加速的ASP网站获取用户真实IP程序

2024-05-04 11:08:26
字体:
来源:转载
供稿:网友
写了下asp取真实IP的代码,搭环境测试无代理、一级或多级代理的情况,可以正常获取
 
 
 
复制代码代码如下:

function checkip(checkstring)'用正则判断IP是否合法 
dim re1 
set re1=new RegExp 
re1.pattern="^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$" 
re1.global=false 
re1.Ignorecase=false 
checkip=re1.test(checkstring) 
set re1=nothing 
end function 

复制代码代码如下:

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 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表