国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 幫助中心 > 正文

php 獲取本機外網/公網IP的代碼

2024-07-09 22:42:15
字體:
來源:轉載
供稿:網友
大家一般都是用$_SERVER['REMOTE_ADDR']來獲取用戶IP,

但是如果使用了反向代理的,HTTP頭中REMOTE_ADDR就不是用戶的地址,反而是上一級代理的地址了。

經過我的研究有兩種方法來獲取用戶的真實外網IP。


方法一:curl
復制代碼 代碼如下:
function get_onlineip() {
$ch = curl_init('http://www.ip138.com/ip2city.asp');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$a = curl_exec($ch);
preg_match('//[(.*)/]/', $a, $ip);
return $ip[1];
}



方法二:$_SERVER['HTTP_X_FORWARDED_FOR']來獲取相應的地址
復制代碼 代碼如下:
function get_onlineip() {
$onlineip = '';
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$onlineip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$onlineip = $_SERVER['REMOTE_ADDR'];
}
return $onlineip;
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 五寨县| 房产| 新兴县| 海原县| 寿宁县| 湖南省| 桃源县| 东乡县| 舞阳县| 白山市| 民丰县| 玉龙| 桦南县| 鲁甸县| 时尚| 叶城县| 栾川县| 重庆市| 汝州市| 巩义市| 大埔县| 贵州省| 六枝特区| 永善县| 蓬安县| 凌源市| 固阳县| 时尚| 安远县| 邯郸县| 阳朔县| 天镇县| 健康| 古田县| 确山县| 上犹县| 通州区| 镇沅| 奎屯市| 龙南县| 泽普县|