国产探花免费观看_亚洲丰满少妇自慰呻吟_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;
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 城固县| 石林| 高雄市| 土默特右旗| 阿拉善左旗| 大名县| 嘉善县| 白银市| 外汇| 大足县| 浦城县| 浦北县| 长武县| 寻乌县| 石首市| 巴南区| 鹤壁市| 阳原县| 万州区| 海淀区| 邵阳市| 九龙城区| 黄石市| 高雄县| 博兴县| 游戏| 沂水县| 新源县| 甘孜| 庆元县| 龙门县| 涿鹿县| 色达县| 远安县| 宁晋县| 鄂托克旗| 华亭县| 和顺县| 长岛县| 应城市| 尖扎县|