php中獲取遠(yuǎn)程客戶端的真實ip地址的方法
更新時間:2011年08月03日 22:48:22 作者:
在PHP 中使用 $_SERVER["REMOTE_ADDR"] 來取得客戶端的 IP 地址,但如果客戶端是使用代理服務(wù)器來訪問,那取到的就是代理服務(wù)器的 IP 地址,而不是真正的客戶端 IP 地址。
(1).REMOTE_ADDR:瀏覽當(dāng)前頁面的用戶計算機(jī)的ip地址
(2).HTTP_X_FORWARDED_FOR: 瀏覽當(dāng)前頁面的用戶計算機(jī)的網(wǎng)關(guān)
(3).HTTP_CLIENT_IP:客戶端的ip
在PHP 中使用 $_SERVER["REMOTE_ADDR"] 來取得客戶端的 IP 地址,但如果客戶端是使用代理服務(wù)器來訪問,那取到的就是代理服務(wù)器的 IP 地址,而不是真正的客戶端 IP 地址。要想透過代理服務(wù)器取得客戶端的真實 IP 地址,就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 來讀取。
不過要注意的事,并不是每個代理服務(wù)器都能用 $_SERVER["HTTP_X_FORWARDED_FOR"] 來讀取客戶端的真實 IP,有些用此方法讀取到的仍然是代理服務(wù)器的 IP。
還有一點需要注意的是:如果客戶端沒有通過代理服務(wù)器來訪問,那么用$_SERVER["HTTP_X_FORWARDED_FOR"] 取到的值將是空的。
(2).HTTP_X_FORWARDED_FOR: 瀏覽當(dāng)前頁面的用戶計算機(jī)的網(wǎng)關(guān)
(3).HTTP_CLIENT_IP:客戶端的ip
在PHP 中使用 $_SERVER["REMOTE_ADDR"] 來取得客戶端的 IP 地址,但如果客戶端是使用代理服務(wù)器來訪問,那取到的就是代理服務(wù)器的 IP 地址,而不是真正的客戶端 IP 地址。要想透過代理服務(wù)器取得客戶端的真實 IP 地址,就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 來讀取。
不過要注意的事,并不是每個代理服務(wù)器都能用 $_SERVER["HTTP_X_FORWARDED_FOR"] 來讀取客戶端的真實 IP,有些用此方法讀取到的仍然是代理服務(wù)器的 IP。
還有一點需要注意的是:如果客戶端沒有通過代理服務(wù)器來訪問,那么用$_SERVER["HTTP_X_FORWARDED_FOR"] 取到的值將是空的。
相關(guān)文章
php運行出現(xiàn)Call to undefined function curl_init()的解決方法
curl_init -- 初始化一個CURL會話,如果提示Call to undefined function curl_init那么需要如下操作即可。2010-11-11php實現(xiàn)把數(shù)組按指定的個數(shù)分隔
這篇文章主要介紹了php實現(xiàn)把數(shù)組按指定的個數(shù)分隔。需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02