php 怎么获取服务器端ip地址

php 怎么获取服务器端ip地址,第1张

<?php

function getIp()

{

    $IPaddress=''

    if (isset($_SERVER)){

        if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

            $IPaddress = $_SERVER["HTTP_X_FORWARDED_FOR"]

        } else if (isset($_SERVER["HTTP_CLIENT_IP"])) {

            $IPaddress = $_SERVER["HTTP_CLIENT_IP"]

        } else {

            $IPaddress = $_SERVER["REMOTE_ADDR"]

        }

    } else {

        if (getenv("HTTP_X_FORWARDED_FOR")){

            $IPaddress = getenv("HTTP_X_FORWARDED_FOR")

        } else if (getenv("HTTP_CLIENT_IP")) {

            $IPaddress = getenv("HTTP_CLIENT_IP")

        } else {

            $IPaddress = getenv("REMOTE_ADDR")

        }

    }

    return $IPaddress

}

echo getIp()//就可以输出用户的IP地址

?>

获取服务器端ip地址

<?php

function serverIp(){    

    if(isset($_SERVER)){    

        if($_SERVER['SERVER_ADDR']){    

 $server_ip=$_SERVER['SERVER_ADDR']    

            }else{    

               $server_ip=$_SERVER['LOCAL_ADDR']    

           }    

      }else{    

          $server_ip = getenv('SERVER_ADDR')    

    }    

      return $server_ip    

   }    

        

 echo serverIp()   

 ?>

此方法在本地不可用。需要上传至服务器

如果在本地使用此方法   打印出来的是127.0.0.1

希望对你有帮助

客户端的ip变量:

$_SERVER['REMOTE_ADDR'] :客户端IP,也有可能是代理IP

$_SERVER['HTTP_CLIENT_IP']:代理端的IP,可能存在,也可能伪造

$_SERVER['HTTP_X_FORWARD_FOR'] :用户在哪个ip上使用的id,可能存在,也可能伪造

服务端的ip变量:

$_SERVER['SERVER_NAME'] :需要使用函数gethostname()来获得,这个无论是服务器端还是客户端都能正常显示。

$_SERVER['SERVER_ADDR']:服务器端的ip地址,在服务器端测试ip地址,在客户端测试正常

getnev 获得系统的环境变量:


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/626416.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-16
下一篇2023-07-16

发表评论

登录后才能评论

评论列表(0条)

    保存