asp 取得用戶真實(shí)IP,對(duì)代理地址仍然有效的函數(shù)
Asp獲取真實(shí)IP地址,最簡(jiǎn)單可用一句話獲?。?/p>
ip=request.ServerVariables("REMOTE_ADDR")
response.Write(ip)
但這種方法對(duì)代理服務(wù)器上網(wǎng)的就不準(zhǔn)了,故比較全面的是用下面的方法:取得用戶真實(shí)IP,對(duì)代理地址仍然有效;返回值:文本類(lèi)型的IP地址
<% '****************************** '函數(shù):GetUserTrueIP() '參數(shù):無(wú) '作者:阿里西西 '日期:2007/7/13 '描述:取得用戶真實(shí)IP,對(duì)代理地址仍然有效;返回值:文本類(lèi)型的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 %>
其他網(wǎng)友的補(bǔ)充
<% 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) %>
得到真實(shí)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 取得用戶真實(shí)IP,對(duì)代理地址仍然有效的函數(shù)的詳細(xì)內(nèi)容,更多關(guān)于asp真實(shí)IP的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
SQLServer ADODB.Recordset 錯(cuò)誤“800a0e78”,對(duì)象關(guān)閉時(shí),不允許操作
今天在幫一個(gè)客戶維護(hù)網(wǎng)站的時(shí)候,運(yùn)行asp提示ADODB.Recordset 錯(cuò)誤“800a0e78”,對(duì)象關(guān)閉時(shí),不允許操作,原來(lái)是asp與sqlserver的連接出問(wèn)題導(dǎo)致2014-07-07asp連接mysql數(shù)據(jù)庫(kù)詳細(xì)實(shí)現(xiàn)代碼
文章詳細(xì)的介紹在asp中如何來(lái)連接mysql數(shù)據(jù)庫(kù)并查出數(shù)據(jù)并輸出,同時(shí)也介紹了連接mysql核心代碼及中文亂碼解決辦法2012-04-04在不刷新頁(yè)面的情況下調(diào)用遠(yuǎn)程asp腳本
在不刷新頁(yè)面的情況下調(diào)用遠(yuǎn)程asp腳本...2007-01-01asp下用replace非正則實(shí)現(xiàn)代碼運(yùn)行功能的代碼
asp下用replace非正則實(shí)現(xiàn)代碼運(yùn)行功能的代碼...2007-09-09Ajax跨域代理訪問(wèn)網(wǎng)絡(luò)資源的實(shí)現(xiàn)代碼
解決Ajax跨域訪問(wèn)報(bào)“沒(méi)有權(quán)限”的錯(cuò)誤。需要的朋友可以參考下。2011-03-03