当前位置:首页 » 编程语言 » php客户端ip地址

php客户端ip地址

发布时间: 2022-05-05 16:30:29

① 请教php获取客户端ip端口问题

php获取客户端IP地址方法总结

用php获取客户端IP地址的方法,具体代码如下:

<?php
$iipp=$_SERVER["REMOTE_ADDR"];
echo $iipp;
?>

//////////////////////////////////////////////

<?php
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];

echo $user_IP;
?>

///////////////////////////////////////////////

<?php
function get_real_ip(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10|172.16|192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

echo get_real_ip();
?>

///////////////////////////////////////////////

php获取ip的算法:
<?php
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
{
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
}
elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
{
$ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
}
elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
{
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
}
elseif (getenv("HTTP_X_FORWARDED_FOR"))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif (getenv("HTTP_CLIENT_IP"))
{
$ip = getenv("HTTP_CLIENT_IP");
}
elseif (getenv("REMOTE_ADDR"))
{
$ip = getenv("REMOTE_ADDR");
}
else
{
$ip = "Unknown";
}
echo "你的IP:".$ip ;
?>

///////////////////////////////////////////////

<?php
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
?>

② php中哪个变量表示客户端的ip

1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP。

2. $_SERVER['HTTP_CLIENT_IP']; 代理端的IP,可能存在,可伪造。

3. $_SERVER['HTTP_X_FORWARDED_FOR']; 用户是在哪个IP使用的代理,可能存在,可以伪造。 你看过后很简单吧以后不会可以向我一样经常到后盾人平台找找相关教材看看就会了,希望能帮到你,给个采纳吧谢谢ヾ(◍ ° ㉨ ° ◍)ノ゙

③ php怎么获取手机客户端ip

php获取客户端ip地址方法总结
用php获取客户端ip地址的方法,具体代码如下:
?php
$iipp=$_server["remote_addr"];
echo
$iipp;
?

///////////////////////////////////////////////
?php
$user_ip
=
($_server["http_via"])
?
$_server["http_x_forwarded_for"]
:
$_server["remote_addr"];
$user_ip
=
($user_ip)
?
$user_ip
:
$_server["remote_addr"];
echo
$user_ip;
?

///////////////////////////////////////////////
?php
function
get_real_ip(){
$ip=false;
if(!empty($_server["http_client_ip"])){
$ip
=
$_server["http_client_ip"];
}
if
(!empty($_server['http_x_forwarded_for']))
{
$ips
=
explode
(",
",
$_server['http_x_forwarded_for']);
if
($ip)
{
array_unshift($ips,
$ip);
$ip
=
false;
}
for
($i
=
0;
$i
<
count($ips);
$i++)
{
if
(!eregi
("^(10|172.16|192.168).",
$ips[$i]))
{
$ip
=
$ips[$i];
break;
}
}
}
return
($ip
?
$ip
:
$_server['remote_addr']);
}
echo
get_real_ip();
?

///////////////////////////////////////////////
php获取ip的算法:
?php
if
($http_server_vars["http_x_forwarded_for"])
{
$ip
=
$http_server_vars["http_x_forwarded_for"];
}
elseif
($http_server_vars["http_client_ip"])
{
$ip
=
$http_server_vars["http_client_ip"];
}
elseif
($http_server_vars["remote_addr"])
{
$ip
=
$http_server_vars["remote_addr"];
}
elseif
(getenv("http_x_forwarded_for"))
{
$ip
=
getenv("http_x_forwarded_for");
}
elseif
(getenv("http_client_ip"))
{
$ip
=
getenv("http_client_ip");
}
elseif
(getenv("remote_addr"))
{
$ip
=
getenv("remote_addr");
}
else
{
$ip
=
"unknown";
}
echo
"你的ip:".$ip
;
?

///////////////////////////////////////////////
?php
if(getenv('http_client_ip'))
{
$onlineip
=
getenv('http_client_ip');
}
elseif(getenv('http_x_forwarded_for'))
{
$onlineip
=
getenv('http_x_forwarded_for');
}
elseif(getenv('remote_addr'))
{
$onlineip
=
getenv('remote_addr');
}
else
{
$onlineip
=
$http_server_vars['remote_addr'];
}
echo
$onlineip;
?

④ PHP获取客户端外网ip代码

function get_real_ip()
{
$ip=FALSE;
//客户端IP 或 NONE
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
//多重代理服务器下的客户端真实IP地址(可能伪造),如果没有使用代理,此字段为空
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
//客户端IP 或 (最后一个)代理服务器 IP
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

⑤ php 怎么获取内网IP

ip地址分 IPv4和IPV6两个版本。

127.0.0.1或者192.168.0.1之类的,属于IPV4的格式

127.0.0.1转换为IPv6就是 ::1

IPv6具体的格式写法,你搜索一下了解一下。

另外 ,服务端获取ip地址,是相对的。比如你在局域网内建一个服务器,在程序里获取的ip地址,就是客户端在局域网的ip ,一般是类似 192.168.0.101 之类的,大公司的话可能 10.x.x.x

局域网的ip地址,可以直接在网络适配器上看到

而在inter网,也就是大网络上,服务端获取的ip地址,是你的连网设备获取到的公网ip ,一般一个局域网内的主机,相对于因特网上的服务器,显示的都是公网地址。

公网ip没有在本机电脑上直接显示。会显示在路由或者连网设备上。也可以通过网络搜索 ip地址,会显示你的公网ip

所以,假设一个局域网内,有两台电脑同时访问一个网上的服务器,服务器是没办法给两台电脑区分开ip地址的,显示的是一样的。只是可能得到的设备信息不一样(如:浏览器的useragent)

⑥ PHP如何获取客户端真实IP

如果将这个函数应用到限IP访问的网页中,别人即使通过限IP访问段中的代理服务器,也不能访问该页面。
下面提供一个函数:<?php
// 定义一个函数getIP()
function getIP(){global $ip;
if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if(getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");else$ip = "Unknow";
return $ip;}
// 使用方法:
echo getIP();?>
getenv("REMOTE_ADDR")用来取得客户端的 IP 地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理服务器取得客户端的真实 IP 地址,就要使用 getenv("HTTP_X_FORWARDED_FOR") 来读取。
但是如果客户端没有通过代理服务器来访问,那么用getenv("HTTP_X_FORWARDED_FOR") 取到的值将是空的。
else if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
表示如果getenv("HTTP_X_FORWARDED_FOR") 取到的值存在不为空(即客户端使用代理服务器的情况下),则变量$ip等于getenv("HTTP_X_FORWARDED_FOR") 取到的真实IP值。
如果上面的else if(getenv("HTTP_X_FORWARDED_FOR"))取得的值为空(即没有使用代理服务器),则不会执行下面的$ip = getenv("HTTP_X_FORWARDED_FOR");这一行语句。
这种情况下已经确认客户端没有使用代理服务器,从而通过
else if(getenv("REMOTE_ADDR"))
这两行语句获得客户端的IP地址也是真实的IP地址。

⑦ 用php来获得客户端服务器ip的方法

<?php
echo
"当前脚本服务器的主机名:".gethostbyaddr($_SERVER['REMOTE_ADDR'])."<br
/><hr
/>";
echo
"获得当前运行PHP脚本(页面)所在的服务器的
IP
地址:".$_SERVER['SERVER_ADDR']."<br
/><hr
/>";
echo
"获得当前运行PHP脚本(页面)所在的服务器的
主机名:".$_SERVER['SERVER_NAME'];
echo
'<hr>';
echo
'客户端ip'.
$_SERVER['REMOTE_ADDR'];
echo
'<br>';
echo
'客户端ip'.getenv('REMOTE_ADDR');
echo
"<br>";
echo
'服务器主机ip'.gethostbyname("www.qq.com");
?>
运行出来:
当前脚本服务器的主机名:XYL-PC
获得当前运行PHP脚本(页面)所在的服务器的
IP
地址:127.0.0.1
获得当前运行PHP脚本(页面)所在的服务器的
主机名:localhost
客户端ip127.0.0.1
客户端ip127.0.0.1
服务器主机ip61.135.169.105

⑧ 如何用php获取客户端正确的ip地址

可以看一下下面的这个封装函数,兼容所有浏览器

<?php
functiongetip(){
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_forwared_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"];
else
$ip="unknown";
return($ip);
}
echogetip();
?>

具体的话,可以去这里详细了解http://www.php.cn/php-weizijiaocheng-111952.html,希望对你有帮助

⑨ 使用PHP怎样获得客户端IP地址

function getIp()
{
if ($_SERVER["HTTP_CLIENT_IP"] && strcasecmp($_SERVER["HTTP_CLIENT_IP"], "unknown")) {
$ip = $_SERVER["HTTP_CLIENT_IP"];
} else {
if ($_SERVER["HTTP_X_FORWARDED_FOR"] && strcasecmp($_SERVER["HTTP_X_FORWARDED_FOR"], "unknown")) {
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else {
if ($_SERVER["REMOTE_ADDR"] && strcasecmp($_SERVER["REMOTE_ADDR"], "unknown")) {
$ip = $_SERVER["REMOTE_ADDR"];
} else {
if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],
"unknown")
) {
$ip = $_SERVER['REMOTE_ADDR'];
} else {
$ip = "unknown";
}
}
}
}
return ($ip);
}

echo getIp();

热点内容
内部存储空间怎么清除 发布:2024-05-21 04:04:55 浏览:497
bilibili不能缓存 发布:2024-05-21 03:31:14 浏览:617
解压剃发 发布:2024-05-21 03:16:27 浏览:641
服务器怎么连接到电脑显示屏上 发布:2024-05-21 02:38:21 浏览:286
织梦安装数据库连接失败 发布:2024-05-21 02:37:45 浏览:259
python编程入门经典pdf 发布:2024-05-21 02:31:45 浏览:7
arm编译添加驱动 发布:2024-05-21 02:02:28 浏览:476
安卓设置页面是怎么 发布:2024-05-21 01:32:51 浏览:521
学生成绩管理系统数据库设计 发布:2024-05-21 01:14:41 浏览:43
我的世界什么指令直接出现服务器 发布:2024-05-21 01:10:00 浏览:397