ASP function Code:
Copy CodeThe code is as follows:
function Checkip (checkstring) ' use regular to determine whether IP is legitimate
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 () ' Take real IP functions, first http_client_ip http_x_forwarded_for again 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
Discuz Forum to take real IP PHP code, other similar, please refer to the minor changes
(Discuz modified include/common.inc.php)
Use the following code:
Copy the Code code as follows:
if (getenv (' http_client_ip ') && strcasecmp (getenv (' http_client_ip '), ' unknown ') {
$onlineip = getenv (' http_client_ip ');
} elseif (getenv (' http_x_forwarded_for ') && strcasecmp (getenv (' http_x_forwarded_for '),
' Unknown ')) {
$testip = Explode ('. ', getenv (' http_x_forwarded_for '));
if ($testip [0]== ' 192′&& $testip [1]== ' 168′] {
$onlineip = getenv (' remote_addr ');
}
ElseIf ($testip [0]== ' 10′) {
$onlineip = getenv (' remote_addr ');
}
else {
$onlineip = getenv (' http_x_forwarded_for ');
}
Gamesir hack End} elseif (getenv (' remote_addr ') && strcasecmp (getenv (' remote_addr '),
' Unknown ')) {
$onlineip = getenv (' remote_addr ');
} elseif (Isset ($_server[' remote_addr ") && $_server[' remote_addr '] && strcasecmp ($_server
[' REMOTE_ADDR '], ' unknown ') {
by Johnny
$tmp _ip = Explode (', ', $_server[' http_x_forwarded_for ');
$tmp _ip1 = Explode (', ', $tmp _ip[0]);
if ($tmp _ip1[0] = = ' 192′&& $tmp _ip1[1] = = ' 168′) {
$onlineip = getenv (' remote_addr ');
}else if ($tmp _ip1[0]== ' 10′) {
$onlineip = getenv (' remote_addr ');
}
else{
$ONLINEIP = $tmp _ip[0];
}
unset ($tmp _ip); unset ($tmp _ip1);
}
Replace this code:
Copy the Code code as follows:
if (getenv (' http_client_ip ') && strcasecmp (getenv (' http_client_ip '), ' unknown ') {
$onlineip = getenv (' http_client_ip ');
} elseif (getenv (' http_x_forwarded_for ') && strcasecmp (getenv (' http_x_forwarded_for '),
' Unknown ')) {
$onlineip = getenv (' http_x_forwarded_for ');
} elseif (getenv (' remote_addr ') && strcasecmp (getenv (' remote_addr '), ' unknown ') {
$onlineip = getenv (' remote_addr ');
} elseif (Isset ($_server[' remote_addr ") && $_server[' remote_addr '] && strcasecmp ($_server
[' REMOTE_ADDR '], ' unknown ') {
$onlineip = $_server[' remote_addr ');
}
http://www.bkjia.com/PHPjc/326649.html www.bkjia.com true http://www.bkjia.com/PHPjc/326649.html techarticle ASP Function Code: Copy code code as follows: function Checkip (checkstring) ' use regular to determine whether the IP is legitimate Dim re1 set Re1=new RegExp re1.pattern= ' ^[0-9]{1,3}. [0-9] {1,3}. [0-9] {1,3 ...