【问题标题】:PHP $_SERVER['REMOTE_HOST'] returns ::1 [duplicate]PHP $_SERVER['REMOTE_HOST'] 返回 ::1 [重复]
【发布时间】:2011-01-29 17:39:36
【问题描述】:

可能重复:
should $ip=$_SERVER['REMOTE_ADDR']; return ::1 on a mamp localhost?

我正在尝试用 PHP 获取网站访问者的 IP 地址。我期待 $_SERVER['REMOTE_HOST'] 返回类似 127.0.0.1 的内容,但它返回 ::1。

【问题讨论】:

  • 您的服务器配置错误。是共享主机还是一些专用服务器?
  • 这是我的带有标准网络服务器的 Macbook
  • 嗯,它以某种方式返回 ipv6 地址而不是 ipv4 地址。您可以尝试重新配置它,也可以不理会它。

标签: php ip-address


【解决方案1】:

您要查找的变量是:

<?php echo $_SERVER['REMOTE_ADDR']; ?>

【讨论】:

    【解决方案2】:

    ::1 是 127.0.0.1 的 IPv6 等价物 - 请参阅 http://www.juniper.net/techpubs/software/erx/erx50x/swconfig-routing-vol1/html/ipv6-config5.html 的长格式是
    0:0:0:0:0:0:0:1 - 但 :: 代表 0 的运行。

    【讨论】:

      【解决方案3】:

      这里有两种可能:

      1. 地址是 ipv6。这已经被指出了,所以我认为情况并非如此
      2. 服务器上运行着防火墙。如您所说,这是您的本地 Web 服务器,请检查其上是否有防火墙,因为某些防火墙确实会阻止服务器信息。

      让我们知道它是怎么回事。

      【讨论】:

        【解决方案4】:

        使用$_SERVER['REMOTE_ADDR']

        它会给出IP地址

        Refer this link for more info about $_SERVER

        【讨论】:

        • 会不会是 IPv6 地址?
        猜你喜欢
        • 2013-05-27
        • 2023-04-04
        • 2012-07-02
        • 2018-05-13
        • 2015-03-03
        • 2014-11-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多