今天小編給大家分享的是php怎么獲取客戶端ip地址,相信很多人都不太了解,為了讓大家更加了解,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會有所收獲的哦。
PHP即“超文本預處理器”,是一種通用開源腳本語言。PHP是在服務器端執(zhí)行的腳本語言,與C語言類似,是常用的網(wǎng)站編程語言。PHP獨特的語法混合了C、Java、Perl以及 PHP 自創(chuàng)的語法。利于學習,使用廣泛,主要適用于Web開發(fā)領域。
php獲取客戶端ip地址的方法
一、如果沒有使用代理服務器
REMOTE_ADDR = 客戶端IP
HTTP_X_FORWARDED_FOR = 沒數(shù)值或不顯示
$ip = $_SERVER['REMOTE_ADDR'];
二、使用透明代理
REMOTE_ADDR = 最后一個代理服務器 IP
HTTP_X_FORWARDED_FOR = 客戶端真實 IP (經(jīng)過多個代理服務器時,這個值類似:221.5.252.160, 203.98.182.163, 203.129.72.215)
這類代理還會將客戶真實ip發(fā)送到請求對象,無法隱藏真實ip。
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
三、使用普通匿名代理服務器
REMOTE_ADDR = 最后一個代理服務器 IP
HTTP_X_FORWARDED_FOR = 代理服務器 IP (經(jīng)過多個代理服務器時,這個值類似:203.98.182.163, 203.98.182.163, 203.129.72.215)
這樣就隱藏了客戶端的真實ip,但服務器會知道客戶端是通過代理服務器去訪問的。
四、使用欺騙性代理服務器
REMOTE_ADDR = 代理服務器 IP
HTTP_X_FORWARDED_FOR = 隨機的 IP(經(jīng)過多個代理服務器時,這個值類似:220.4.251.159, 203.98.182.163, 203.129.72.215)
服務器可以識別到時通過代理服務器訪問的,但發(fā)送給目標服務器的是虛假ip。
五、使用高匿名代理
REMOTE_ADDR = 代理服務器 IP
HTTP_X_FORWARDED_FOR = 沒數(shù)值或不顯示
使用這種代理時,不同瀏覽器不同設備會返回不同的ip頭信息,因此PHP使用$_SERVER["REMOTE_ADDR"] 、$_SERVER["HTTP_X_FORWARDED_FOR"] 獲取的值可能是空值也可能是“unknown”值。
PHP獲取ip代碼如下:
public function ip() { //strcasecmp 比較兩個字符,不區(qū)分大小寫。返回0,>0,<0。 if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $ip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $ip = getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $ip = $_SERVER['REMOTE_ADDR']; } $res = preg_match ( '/[\d\.]{7,15}/', $ip, $matches ) ? $matches [0] : ''; echo $res; //dump(phpinfo());//所有PHP配置信息 }
關(guān)于php怎么獲取客戶端ip地址就分享到這里了,希望以上內(nèi)容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
分享標題:php怎么獲取客戶端ip地址-創(chuàng)新互聯(lián)
轉(zhuǎn)載來于:http://jinyejixie.com/article12/dijddc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、網(wǎng)站營銷、服務器托管、全網(wǎng)營銷推廣、定制網(wǎng)站、自適應網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容