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

时间:2022-10-30 19:25:14

代码如下:


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