老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

怎樣用PHP獲取客戶端和服務端IP

怎樣用PHP獲取客戶端和服務端IP?這篇文章運用了實例代碼展示,代碼非常詳細,可供感興趣的小伙伴們參考借鑒,希望對大家有所幫助。

創新互聯公司是一家專注于網站設計、成都做網站與策劃設計,蒙山網站建設哪家好?創新互聯公司做網站,專注于網站建設十年,網設計領域的專業建站公司;建站業務涵蓋:蒙山等地區。蒙山做網站價格咨詢:18982081108

1、php獲取客戶端IP

在PHP獲取客戶端IP時,常使用 $_SERVER["REMOTE_ADDR"] 。但如果客戶端是使用代理服務器來訪問,那取到的是代理服務器的 IP 地址,而不是真正的客戶端 IP 地址。要想透過代理服務器取得客戶端的真實 IP 地址,就要使用$_SERVER["HTTP_X_FORWARDED_FOR"]來讀取。

但只有客戶端使用“透明代理”的情況下,$_SERVER["HTTP_X_FORWARDED_FOR"] 的值才是客戶端真正的IP(如果是多層代理,該值可能是由客戶端真正IP和多個代理服務器的IP組成,由逗號“,”分隔);而在“匿名代理”、“欺騙性代理”的情況下是代理服務器的IP值(如果是多層代理,該值可能由多個代理服務器的IP組成,由逗號“,”分隔);在“高匿名代理”的情況下是空值。

REMOTE_ADDR 是你的客戶端跟你的服務器“握手”時候的IP。如果使用了“匿名代理”,REMOTE_ADDR將顯示代理服務器的IP。
HTTP_CLIENT_IP 是代理服務器發送的HTTP頭。如果是“超級匿名代理”,則返回none值。同樣,REMOTE_ADDR也會被替換為這個代理服務器的IP。

$_SERVER['REMOTE_ADDR']; //訪問端IP(有可能是用戶,有可能是代理服務器的,也有可能是反向代理服務器的)
$_SERVER['HTTP_CLIENT_IP']; //代理端的(有可能存在,可偽造),未成標準,不一定服務器都實現了。
$_SERVER['HTTP_X_FORWARDED_FOR']; //用戶是在哪個IP使用的代理(有可能存在,也可以偽造),有標準定義,用來識別經過HTTP代理后的客戶端IP地址,格式:clientip,proxy1,proxy2。詳細解釋見 http://zh.wikipedia.org/wiki/X-Forwarded-For。

三個值區別如下:

一、沒有使用代理服務器的情況:

REMOTE_ADDR = 您的 IP
HTTP_VIA = 沒數值或不顯示
HTTP_X_FORWARDED_FOR = 沒數值或不顯示

二、使用透明代理服務器的情況:Transparent Proxies

REMOTE_ADDR = 最后一個代理服務器 IP
HTTP_VIA = 代理服務器 IP
HTTP_X_FORWARDED_FOR = 您的真實 IP ,經過多個代理服務器時,這個值類似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

這類代理服務器還是將您的信息轉發給您的訪問對象,無法達到隱藏真實身份的目的。

三、使用普通匿名代理服務器的情況:Anonymous Proxies

REMOTE_ADDR = 最后一個代理服務器 IP
HTTP_VIA = 代理服務器 IP
HTTP_X_FORWARDED_FOR = 代理服務器 IP ,經過多個代理服務器時,這個值類似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

隱藏了您的真實IP,但是向訪問對象透露了您是使用代理服務器訪問他們的。

四、使用欺騙性代理服務器的情況:Distorting Proxies

REMOTE_ADDR = 代理服務器 IP
HTTP_VIA = 代理服務器 IP
HTTP_X_FORWARDED_FOR = 隨機的 IP ,經過多個代理服務器時,這個值類似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

告訴了訪問對象您使用了代理服務器,但編造了一個虛假的隨機IP代替您的真實IP欺騙它。

五、使用高匿名代理服務器的情況:High Anonymity Proxies (Elite proxies)

REMOTE_ADDR = 代理服務器 IP
HTTP_VIA = 沒數值或不顯示
HTTP_X_FORWARDED_FOR = 沒數值或不顯示 ,經過多個代理服務器時,這個值類似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

完全用代理服務器的信息替代了您的所有信息,就象您就是完全使用那臺代理服務器直接訪問對象。

示例代碼:

//獲取用戶IP, 定義一個函數getIP()
function getClientIP(){
if (getenv("HTTP_CLIENT_IP")) {
	$ip = getenv("HTTP_CLIENT_IP");
}elseif(getenv("HTTP_X_FORWARDED_FOR")) {
	$ip = getenv("HTTP_X_FORWARDED_FOR");
}elseif(getenv("REMOTE_ADDR")) {
$ip = getenv("REMOTE_ADDR");
	else $ip = "Unknow";
}
return $ip;
}
或者
function getClientIp() {
	$ip = 'unknow';
    foreach (array(
                'HTTP_CLIENT_IP',
                'HTTP_X_FORWARDED_FOR',
                'HTTP_X_FORWARDED',
                'HTTP_X_CLUSTER_CLIENT_IP',
                'HTTP_FORWARDED_FOR',
                'HTTP_FORWARDED',
                'REMOTE_ADDR') as $key) {
        if (array_key_exists($key, $_SERVER)) {
            foreach (explode(',', $_SERVER[$key]) as $ip) {
                $ip = trim($ip);
                //會過濾掉保留地址和私有地址段的IP,例如 127.0.0.1會被過濾
                //也可以修改成正則驗證IP
                if ((bool) filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
                    return $ip;
                }
            }
        }
    }
    return $ip;
}

2.php獲取服務器端IP

服務器端IP相關的變量
a. $_SERVER["SERVER_NAME"],需要使用函數gethostbyname()獲得。這個變量無論在服務器端還是客戶端均能正確顯示。

b. $_SERVER["SERVER_ADDR"],在服務器端測試:127.0.0.1(這個與httpd.conf中BindAddress的設置值相關)。在客戶端測試結果正確。

/**
* 獲取服務器端IP地址
 * @return string
 */
function getServerIp() { 
    if (isset($_SERVER)) { 
        if($_SERVER['SERVER_ADDR']) {
            $server_ip = $_SERVER['SERVER_ADDR']; 
        } else { 
            $server_ip = $_SERVER['LOCAL_ADDR']; 
        } 
    } else { 
        $server_ip = getenv('SERVER_ADDR');
    } 
    return $server_ip; 
}
或者
function getServerIP(){    
    return gethostbyname($_SERVER["SERVER_NAME"]);    
}

看完上述內容,你們對PHP獲取客戶端和服務端IP大概了解了嗎?如果想了解更多相關文章內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!


分享題目:怎樣用PHP獲取客戶端和服務端IP
URL網址:http://www.xueling.net.cn/article/jgsdjc.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 亚洲美女精品视频 | 韩国19禁视频一区二区 | 麻豆传媒在线观看 | 91九色第一页 | 成人性生交大片免费看中文带字幕 | 台湾成人免费视频 | 欧美一区二区三区四区视频 | 日本一级特黄aa大片 | 亚洲中文字幕无线无码毛片 | 亚洲视频重口味 | 国产亚洲无线码一区二区 | XXX波多野结衣苍井空 | JJZZ中国JJZZ| 无码人妻久久一区二区三区免费 | 久久精品国语对话 | 西欧FREE性满足HD老熟妇 | 欧美精品一产区二产区 | 波多野结衣中文AV无码专区 | 国产不卡一级无码视频 | 国产成人啪精品视频免费网 | 亚洲成熟少妇 | 人妻精品动漫h无码中字 | 91青草视频 | 国产做a∨在线视频播放 | 久久久久美女 | 狠狠躁日日躁狂躁夜夜躁 | 麻豆专媒体一区二区 | 丰满少妇aaaaaa爰片毛片 | 亚洲人成在线免费观看 | 久久久久亚洲av成人动图 | 免费A级毛片 | 欧美视屏一区二区 | 67194免费观看网站 | 亚洲人成色4444在线观看 | 亚洲天堂av网站 | 高H猛烈失禁潮喷A片在线观看 | 91日韩精品久久久久身材苗条 | 最新国产の精品合集bt伙计 | 欧美日韩中字 | 成人免费视频视频在线观看免费 | 妃子涨奶和侍卫h |