2010-12-16 6 views
0

を使用して、ローカルシステムのIPアドレスを取得する方法T0私は、インターネット経由でWebサーバにアクセスしていますし、ローカルネットワークを介して、その後、私は私のローカルシステムのIPアドレスを取得する方法を私はすでにでこれをしようとしないPHP

GATEWAY_INTERFACE = <?php echo $_SERVER['GATEWAY_INTERFACE']; ?> <br> 
SERVER_ADDR = <?php echo $_SERVER['SERVER_ADDR']; ?> <br> 
SERVER_NAME = <?php echo $_SERVER['SERVER_NAME']; ?> <br> 
SERVER_SOFTWARE = <?php echo $_SERVER['SERVER_SOFTWARE']; ?> <br> 
SERVER_PROTOCOL = <?php echo $_SERVER['SERVER_PROTOCOL']; ?> <br> 
REQUEST_METHOD = <?php echo $_SERVER['REQUEST_METHOD']; ?> <br> 
REQUEST_TIME = <?php echo $_SERVER['REQUEST_TIME']; ?> <br> 
QUERY_STRING = <?php echo $_SERVER['QUERY_STRING']; ?> <br> 
DOCUMENT_ROOT = <?php echo $_SERVER['DOCUMENT_ROOT']; ?> <br> 
HTTP_ACCEPT = <?php echo $_SERVER['HTTP_ACCEPT']; ?> <br> 
HTTP_ACCEPT_CHARSET = <?php echo $_SERVER['HTTP_ACCEPT_CHARSET']; ?> <br> 
HTTP_ACCEPT_ENCODING = <?php echo $_SERVER['HTTP_ACCEPT_ENCODING']; ?> <br> 
HTTP_ACCEPT_LANGUAGE = <?php echo $_SERVER['HTTP_ACCEPT_LANGUAGE']; ?> <br> 
HTTP_CONNECTION = <?php echo $_SERVER['HTTP_CONNECTION']; ?> <br> 
HTTP_HOST = <?php echo $_SERVER['HTTP_HOST']; ?> <br> 
HTTP_REFERER = <?php echo $_SERVER['HTTP_REFERER']; ?> <br> 
HTTP_USER_AGENT = <?php echo $_SERVER['HTTP_USER_AGENT']; ?> <br> 
HTTPS = <?php echo $_SERVER['HTTPS']; ?> <br> 
REMOTE_ADDR = <?php echo $_SERVER['REMOTE_ADDR']; ?> <br> 
REMOTE_HOST = <?php echo $_SERVER['REMOTE_HOST']; ?> <br> 
REMOTE_PORT = <?php echo $_SERVER['REMOTE_PORT']; ?> <br> 
SCRIPT_FILENAME = <?php echo $_SERVER['SCRIPT_FILENAME']; ?> <br> 
SERVER_ADMIN = <?php echo $_SERVER['SERVER_ADMIN']; ?> <br> 
SERVER_PORT = <?php echo $_SERVER['SERVER_PORT']; ?> <br> 
SERVER_SIGNATURE = <?php echo $_SERVER['SERVER_SIGNATURE']; ?> <br> 
PATH_TRANSLATED = <?php echo $_SERVER['PATH_TRANSLATED']; ?> <br> 
SCRIPT_NAME = <?php echo $_SERVER['SCRIPT_NAME']; ?> <br> 
REQUEST_URI = <?php echo $_SERVER['REQUEST_URI']; ?> <br> 
PHP_AUTH_DIGEST = <?php echo $_SERVER['PHP_AUTH_DIGEST']; ?> <br> 
PHP_AUTH_USER = <?php echo $_SERVER['PHP_AUTH_USER']; ?> <br> 
PHP_AUTH_PW = <?php echo $_SERVER['PHP_AUTH_PW']; ?> <br> 
AUTH_TYPE = <?php echo $_SERVER['AUTH_TYPE']; ?> <br> 


(and) 

<html> 
<head> 
<title>What is my IP address?</title> 
</head> 
<body> 
<?php 

    if (getenv(HTTP_X_FORWARDED_FOR)) { 
     $pipaddress = getenv(HTTP_X_FORWARDED_FOR); 
     $ipaddress = getenv(REMOTE_ADDR); 
echo "Your Proxy IPaddress is : ".$pipaddress. "(via $ipaddress)" ; 
    } else { 
     $ipaddress = getenv(REMOTE_ADDR); 
     echo "Your IP address is : $ipaddress"; 
    } 
?> 
</body> 
</html> 

しかし、それは単にサーバIPを与えるだけではありません。しばらくお待ちください

+0

$ _SERVER [ 'REMOTE_ADDR']:それ、および他のさまざまな状況の場合、このクラスを使用します。私は問題を理解していない。 – Robert

+0

以下のリンクのコピー。あなたはこれまでにこれに尋ねましたが、誰も答えられませんでしたおそらくあなたはあなたが探しているものと何が起こっているのかを明確にすることができますか? http://stackoverflow.com/questions/4447716/how-to-get-the-my-system-ip-address/4447734#4447734 – Beaker

答えて

0

$ _SERVER ['REMOTE_ADDR']は負荷分散サイトでは動作しません。クライアントのIPアドレスを与える

http://brettic.us/code/php-codeigniter-remote-ip-from-load-balancer/

class RemoteIP 
{ 
function ip_address() 
{ 
    if ($this->ip_address !== FALSE) 
    { 
    return $this->ip_address; 
    } 

    if ($this->server('HTTP_X_CLIENTIP')) 
    { 
    $this->ip_address = $_SERVER['HTTP_X_CLIENTIP']; 
    } 
    elseif ($this->server('REMOTE_ADDR') AND $this->server('HTTP_CLIENT_IP')) 
    { 
    $this->ip_address = $_SERVER['HTTP_CLIENT_IP']; 
    } 
    elseif ($this->server('REMOTE_ADDR')) 
    { 
    $this->ip_address = $_SERVER['REMOTE_ADDR']; 
    } 
    elseif ($this->server('HTTP_CLIENT_IP')) 
    { 
    $this->ip_address = $_SERVER['HTTP_CLIENT_IP']; 
    } 
    elseif ($this->server('HTTP_X_FORWARDED_FOR')) 
    { 
    $this->ip_address = $_SERVER['HTTP_X_FORWARDED_FOR']; 
    } 

    if ($this->ip_address === FALSE) 
    { 
    $this->ip_address = '0.0.0.0'; 
    return $this->ip_address; 
    } 

    if (strstr($this->ip_address, ',')) 
    { 
    $x = explode(',', $this->ip_address); 
    $this->ip_address = end($x); 
    } 

    if (! $this->valid_ip($this->ip_address)) 
    { 
    $this->ip_address = '0.0.0.0'; 
    } 

    return $this->ip_address; 
} 
} 
関連する問題

 関連する問題