PHP 獲取客戶端ip位址

2022-08-01 01:06:14 字數 1726 閱讀 5278

一、如果沒有使用**伺服器,

remote_addr= 客戶端ip    

http_x_forwarded_for= 沒數值或不顯示

$ip = $_server['remote_addr'];

二、使用透明**,

remote_addr= 最後乙個**伺服器 ip

http_x_forwarded_for= 客戶端真實 ip (經過多個**伺服器時,這個值類似:221.5.252.160, 203.98.182.163, 203.129.72.215)

這類**還會將客戶真實ip傳送到請求物件,無法隱藏真實ip。

三、使用普通匿名**伺服器,

remote_addr

= 最後乙個**伺服器 ip

http_x_forwarded_for=**伺服器 ip (經過多個**伺服器時,這個值類似:203.98.182.163, 203.98.182.163, 203.129.72.215)

這樣就隱藏了客戶端的真實ip,但伺服器會知道客戶端是通過**伺服器去訪問的。

四、使用欺騙性**伺服器,

remote_addr= **伺服器 ip

http_x_forwarded_for= 隨機的 ip(經過多個**伺服器時,這個值類似:220.4.251.159, 203.98.182.163, 203.129.72.215)

伺服器可以識別到時通過**伺服器訪問的,但傳送給目標伺服器的是虛假ip。

五、使用高匿名**,

remote_addr=**伺服器 iphttp_x_forwarded_for=沒數值或不顯示

使用這種**時,不同瀏覽器不同裝置會返回不同的ip頭資訊,因此php使用$_server["remote_addr"]

獲取的值可能是空值也可能是「unknown」值。

php獲取ip**如下:

//dump(phpinfo());//所有php配置資訊

}

php 獲取客戶端IP位址

獲取真實ip位址 在php中getenv 引數 函式是乙個用於獲取環境變數的函式,根據提供不同的引數可以獲取不同的環境變數,getenv remote addr 用來取得客戶端的 ip 位址,但如果客戶端是使用 伺服器來訪問,那取到的就是 伺服器的 ip 位址,而不是真正的客戶端 ip 位址。要想透...

php獲取客戶端ip位址

最近做的專案需要php獲取 客戶端訪問的ip位址,其實原理很簡單,從 php的 server全域性陣列中直接獲取即可。不過有的時候伺服器不同或者 伺服器等等問題,索性全部總結一遍,基本各種情況都考慮到了,直接 使用即可 function real ip 可獲取到 server的情況下 獲取不到 se...

PHP 獲取客戶端ip位址

一 如果沒有使用 伺服器,remote addr 客戶端iphttp x forwarded for 沒數值或不顯示 ip server remote addr 二 使用透明 remote addr 最後乙個 伺服器 ip http x forwarded for 客戶端真實 ip 經過多個 伺服器...