PHP獲得客戶端IP

2021-09-30 05:05:19 字數 1174 閱讀 9483

php獲得客戶端ip

getenv -- gets the value of an environment variable, string getenv ( string varname ), returns the value of the environment variable varname, or false on an error.

view plain

copy to clipboard

print?

<?php   

// example use of getenv()

$ip  =  getenv ( 'remote_addr' );  

// or simply use a superglobal ($_server or $_env)

$ip  =  $_server [ 'remote_addr' ];   

?>  

<?php 

// example use of getenv()

$ip = getenv('remote_addr');

// or simply use a superglobal ($_server or $_env)

$ip = $_server['remote_addr'];

?>

這是在php官方的manual提供的方法。

但是當web伺服器api是asapi (iis)的時候,getenv函式是不起作用的。這種情況下你如果用getenv來取得使用者客戶端ip的話,得到的將是錯誤的ip位址。

因此更為安全和準確的方法是盡量避免使用getenv函式。比如可以用以下的函式來獲取ip資訊:

程式**

view plain

copy to clipboard

print?

<?php  

function  getip()  

$ip  = getip();  

echo

$ip ;  

?>  

<?php

function getip()

$ip = getip();

echo $ip;

?>

執行結果演示

你的ip為: 219.142.31.246

php獲得客戶端ip

在php 中使用 server remote addr 來取得客戶端的 ip 位址,但如果客戶端是使用 伺服器來訪問,那取到的就是 伺服器的 ip 位址,而不是真正的客戶端 ip 位址。要想透過 伺服器取得客戶端的真實 ip 位址,就要使用 server http x forwarded for 來...

關於獲得客戶端ip

在 asp 中使用 request.servervariables remote addr 來取得客戶端的 ip 位址,但如果客戶端是使用 服務 器來訪問,那取到的就是 伺服器的 ip 位址,而不是真正的客戶端 ip 位址。要想透過 伺服器取得客戶端的真實 ip 位址,就要使用 request.se...

PHP獲得真實客戶端的真實IP

remote addr 是你的客戶端跟你的伺服器 握手 時候的ip。如果使用了 匿名 remote addr將顯示 伺服器的ip。http client ip 是 伺服器傳送的http頭。如果是 超級匿名 則返回none值。同樣,remote addr也會被替換為這個 伺服器的ip。server r...