PHP獲取客戶端的IP
1.REMOTE_ADDR:瀏覽當前頁面的使用者計算機的ip地址
2.HTTP_X_FORWARDED_FOR: 瀏覽當前頁面的使用者計算機的閘道器
3.HTTP_CLIENT_IP:客戶端的ip
在PHP 中使用
不過要注意的事,並不是每個代理伺服器都能用 $_SERVER[“HTTP_X_FORWARDED_FOR”] 來讀取客戶端的真實 IP,有些用此方法讀取到的仍然是代理伺服器的 IP。
還有一點需要注意的是:如果客戶端沒有通過代理伺服器來訪問,那麼用$_SERVER[“HTTP_X_FORWARDED_FOR”] 取到的值將是空的。
/**
* 獲取客戶端IP
* @return string
*/
function get_client_ip()
{
$realip = "";
if ($_SERVER['HTTP_X_FORWARDED_FOR'] && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_X_FORWARDED_FOR']))
{
$realip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else if ($_SERVER['HTTP_CLIENT_IP'] && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['HTTP_CLIENT_IP'];
}
else if($_SERVER['REMOTE_ADDR'] && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/' , $_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['REMOTE_ADDR'];
}
return $realip;
}
相關推薦
PHP獲取客戶端IP地址,服務器IP地址
客戶端 get sse spa gets static p地址 tip sta ============================================獲取客戶端IP==============================================
PHP 獲取客戶端 IP 地址
先來了解一個變數的含義: $_SERVER['REMOTE_ADDR']:瀏覽當前頁面的使用者計算機的ip地址 $_SERVER['HTTP_CLIENT_IP']:客戶端的ip $_SERVER['HTTP_X_FORWARDED_FOR']:瀏覽當前頁面的使用者計算機的閘道器
php獲取客戶端ip地址或者伺服器ip地址
1.$_SERVER['REMOTE_ADDR'] 客戶端IP,有可能是使用者的IP,也可能是代理的IP。 2.$_SERVER['HTTP_CLIENT_IP'] 代理端的IP,可能存在可偽造。 3.$_SERVER['HTTP_X_FORWARDER_FOR'] 使用者是在哪個IP使用的代理,可
PHP 獲取客戶端ip地址
一、如果沒有使用代理伺服器, REMOTE_ADDR = 客戶端IP HTTP_X_FORWARDED_FOR = 沒數值或不顯示 $ip = $_SERVER['REMOTE_ADDR']; 二、使用透明代理, REMOTE_ADDR = 最後
php獲取客戶端IP和php獲取伺服器端IP
1.php獲取客戶端IP 在PHP獲取客戶端IP時,常使用 $_SERVER["REMOTE_ADDR"] 。但如果客戶端是使用代理伺服器來訪問,那取到的是代理伺服器的 IP 地址,而不是真正的客戶端 IP 地址。要想透過代理伺服器取得客戶端的真實 IP 地址,就要
PHP獲取客戶端IP地址、瀏覽器型別版本、作業系統
</pre><pre name="code" class="php"><?php //獲取IP地址 function get_client_ip($type = 0,$adv=true) { $type = $type ? 1 : 0
PHP獲取客戶端和服務器端IP(轉)
light 代理ip pre 客戶端測試 function 變量 clas env 環境 客戶端的ip變量: $_SERVER[‘REMOTE_ADDR‘] :客戶端IP,也有可能是代理IP $_SERVER[‘HTTP_CLIENT_IP‘]:代理端的IP,可能存在,也可
php 獲取客戶端的真實IP地址 和 檢查客戶端從什麼地方過來的請求
/* * 函式功能: 獲取客戶端的真實IP地址 * * 為什麼要用這個函式? * 因為我們線上Web伺服器絕大部分都處於Netscaler(簡稱NS)後面,客戶端訪問的地址統一由NS排程 * 由NS排程的訪問其實就是NS做了一層代理, 這期間就有一個問題, 因為真實
PHP 後臺獲取客戶端ip
做微信小程式時,需要獲取到使用者手機的ip。找不到小程式相關資料,於是乎發現自己的思路錯了。 在小程式端傳送 手機ip到後臺思路目前是行不通的,將思路改變為在後臺獲取客戶端ip,具體函式如下(放專案公共函式檔案內即可) if (!function_exists('get_
php 獲取客戶端的ip、地理資訊、瀏覽器資訊、本地真實ip
<?php // 作用取得客戶端的ip、地理資訊、瀏覽器、本地真實IP class get_gust_info { ////獲得訪客瀏覽器型別 function GetBrowser(){ if(!empty($_SERVER['HTTP_U
PHP獲取客戶端的IP
1.REMOTE_ADDR:瀏覽當前頁面的使用者計算機的ip地址 2.HTTP_X_FORWARDED_FOR: 瀏覽當前頁面的使用者計算機的閘道器 3.HTTP_CLIENT_IP:客戶端的ip 在PHP 中使用 SERVER["REMOTEADDR"]
PHP獲取客戶端真實IP
我們經常要用資料庫記錄使用者的IP,以下程式碼可以獲取客戶端真實的IP://獲取使用者真實IP function getIp() { if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_C
php獲取客戶端真實ip地址的三種方法
php獲取使用者(客戶端)真實IP地址的兩種方法 第一種方法,還算靠譜,本人以前一直用的是這個方法: function get_real_ip(){ $ip=false; if(!empty($_SERVER['HTTP_CL
Java獲取客戶端IP
不為 pty 獲取 code 中間 clas 代理服務器 gin servle 在開發工作中,我們常常需要獲取客戶端的IP。一般獲取客戶端的IP地址的方法是:request.getRemoteAddr();但是在通過了Apache,Squid等反向代理軟件就不能獲取到客戶端
ASP.NET獲取客戶端IP/用戶名等信息
username .net target list .get 獲取用戶信息 add dom 編程 1. 在ASP.NET中專用屬性: 獲取服務器電腦名:Page.Server.ManchineName 獲取用戶信息:Page.User 獲取客戶端電腦名:Page.Reque
php獲取客戶端mac地址
pre -a 結果 array serve str bre val log exec(‘/sbin/arp -a 2>&1‘, $array, $return_val);dump($array);$mac = ‘‘;foreach($array as $val
獲取客戶端IP地址
type 數字 fun xpl func ram server ip地址 p地址 /** * 獲取客戶端IP地址 * @param integer $type 返回類型 0 返回IP地址 1 返回IPV4地址數字 * @param boole
獲取客戶端ip訪問網站的次數和請求頁面腳本
客戶端ip訪問網站的次數和請求頁面腳本獲取客戶端ip訪問網站的次數和請求頁面 #/bin/bash cd /data/iplog/$1/pv txt=$(ls -l|awk ‘{print $NF}‘|sed ‘1d‘) for n in $txt do ip=$(cat /root/iplist) for
JAVA中經過nginx反向代理獲取客戶端ip並獲取相關坐標等信息
IT urn 輸出 代理 nginx 高德 AD color javascrip 關於搜狐新浪ip庫查詢接口的使用 直接輸出訪客ip及所在城市: <script src="http://pv.sohu.com/cityjson?ie=utf-8" >&l
獲取客戶端 ip
shift reg server add arr rem xpl for false $ip = false; if (!empty($_SERVER["HTTP_CLIENT_IP"])) { $ip