- ·上一篇文章:给字符串中的网址加上超连接
- ·下一篇文章:jmail发送邮件函数
利用asp获取客户端真实的IP地址
客户端IP有两种情况,一个是代理服务器上网的,另一种是直接上网的,所以要获取客户端IP也需要分开来获取。
<
%
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 
%>
<
%
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 
%>
利用asp获取客户端真实的IP地址