假设用户的PC IP为192.168.10.81(个人电脑窗口中的IPv4)
当此用户浏览www.mydomain.com
时,我希望使用PHP从IP
获取此www.mydomain.com/index.php
有可能吗?如果可能,怎么样?
答案 0 :(得分:1)
试试这段代码..
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
答案 1 :(得分:0)
$ _ SERVER [' REMOTE_ADDR'] 是您唯一可靠的IP地址 - 它是直接从TCP堆栈中提取的,并且是当前连接建立于。这意味着如果用户通过代理进行连接,您将获得代理的地址,而不是用户的地址。
任何其他基于标头的标题都是不可靠的,因为HTTP标头很容易伪造。只要您不信任,您就可以使用他们提供的信息。
试试这段代码:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$browser = $_SERVER['HTTP_USER_AGENT'];
$referrer = $_SERVER['HTTP_REFERER'];
if ($referred == "") {
$referrer = "This page was accessed directly";
}
echo "<b>Visitor IP address:</b><br/>" . $ip . "<br/>";
echo "<b>Browser (User Agent) Info:</b><br/>" . $browser . "<br/>";
echo "<b>Referrer:</b><br/>" . $referrer . "<br/>";
?>
输出如下:
访客IP地址: 127.0.0.1
浏览器(用户代理)信息:Mozilla / 5.0(Windows NT 6.1; rv:9.0.1) Gecko / 20100101 Firefox / 9.0.1
引荐: