是否可以使用PHP获取网络地址?
可能重复:是否可以使用PHP获取网络地址?,php,ip,Php,Ip,可能重复: 我在一个网站上有一个脚本,当客户离开页面时,它会保存一些关于他的信息。是否可以获取他的网络地址,例如192.168.1.154 我在一个论坛上看到一个关于这个的讨论,他们说使用$\u服务器['HTTP\u X\u FORWARDED\u']],但它不起作用!它显示了我的真实IP 我如何才能做到这一点?$\u服务器['REMOTE\u ADDR'] 文件 如果客户端将从本地网络访问您,您将获得192.168.*.*.,否则将获得远程ip,如35.88.33.11$\u服务器['rem
我在一个网站上有一个脚本,当客户离开页面时,它会保存一些关于他的信息。是否可以获取他的网络地址,例如
192.168.1.154
我在一个论坛上看到一个关于这个的讨论,他们说使用$\u服务器['HTTP\u X\u FORWARDED\u']]
,但它不起作用!它显示了我的真实IP
我如何才能做到这一点?
$\u服务器['REMOTE\u ADDR']
文件
如果客户端将从本地网络访问您,您将获得
192.168.*.*.
,否则将获得远程ip,如35.88.33.11
$\u服务器['remote\u ADDR']
文件
如果客户端将从本地网络访问您,您将获得
192.168.*.*.
,否则,远程ip如35.88.33.11
请使用以下命令:
<?php
echo $_SERVER['REMOTE_ADDR']; //ip of visitor - you need this
echo $_SERVER['SERVER_ADDR']; //ip of server
?>
$(document).ready(function(){
//Service 1
$.getJSON( "http://smart-ip.net/geoip-json?callback=?",
function(data){
alert( data.host);
}
);
//Service 2
$.getJSON( "http://jsonip.appspot.com/?callback=?",
function (json){
alert( "User ip: " + json.ip); // alerts the ip address
}
);
});
希望这能有所帮助。使用这个:
<?php
echo $_SERVER['REMOTE_ADDR']; //ip of visitor - you need this
echo $_SERVER['SERVER_ADDR']; //ip of server
?>
$(document).ready(function(){
//Service 1
$.getJSON( "http://smart-ip.net/geoip-json?callback=?",
function(data){
alert( data.host);
}
);
//Service 2
$.getJSON( "http://jsonip.appspot.com/?callback=?",
function (json){
alert( "User ip: " + json.ip); // alerts the ip address
}
);
});
希望这有帮助。这在服务器端是不可能的。像192.168.1.154这样的地址是不可路由的,所以服务器对它们一无所知。可能有些路由器将HTTP_X_FORWARDED_设置为头,但您不应该指望它。除非脚本只在本地网络上运行,就像Peter Szymkowski建议的那样
有关NAT的更多信息,请参阅。这在服务器端是不可能的。像192.168.1.154这样的地址是不可路由的,所以服务器对它们一无所知。可能有些路由器将HTTP_X_FORWARDED_设置为头,但您不应该指望它。除非脚本只在本地网络上运行,就像Peter Szymkowski建议的那样
有关NAT的更多信息,请参见。我将查看
var\u dump($\u SERVER)的哪个参数
显示您的网络IP。我将查看var\u dump($\u SERVER)的哪个参数代码>显示您的网络IP。如果您的服务器位于NAT网络之外,则无法获取客户端的内部本地IP。这不仅会带来安全风险,而且会破坏NAT的目的
如果你想要他的本地NAT'd IP,你可以运行一个javascript:
如果服务器位于NAT网络之外,则无法获取客户端的内部本地IP。这不仅会带来安全风险,而且会破坏NAT的目的
如果你想要他的本地NAT'd IP,你可以运行一个javascript:
你能解释一下你所说的网络地址是什么意思吗?如果你指的是mac地址,我认为不可能在服务器端获得客户端的mac。你能解释一下网络地址是什么意思吗?如果你指的是mac地址,我认为不可能在服务器端获得客户端mac。但这显示了我当前的ip地址,但显示了我当前的ip地址是关于PHP的@这是不可能做到的!这就是为什么提供了一个可行的解决方案。这在我的chrome上不起作用,在我的Firefox上,我得到你机器的本地网络IP是127.0.0.1,这显然不是我的NAT IP。问题是关于PHP的@这是不可能做到的!这就是为什么提供了一个可行的解决方案。这在我的chrome上不起作用,在我的Firefox上,我得到你机器的本地网络IP是127.0.0.1,这显然不是我的NAT IP