【问题标题】:How can I modify my IP address on my localhost in MAMP?如何在 MAMP 中修改本地主机上的 IP 地址?
【发布时间】:2018-02-10 18:35:51
【问题描述】:

在本地开发 WordPress 插件我想在表单验证中实现 Akismet,但我需要一个 IP 地址来提交和运行:

function check_ip_address() {
    if (isset($_SERVER['REMOTE_ADDR'])) :
        $ip_address = $_SERVER['REMOTE_ADDR'];
    else :
        $ip_address = "undefined";
    endif;
    return $ip_address;
}
echo check_ip_address();

我收到了::1。当我研究解决这个问题时,我没有找到可靠的答案:

在研究如何解决::1 时,我发现Should a MAMP return ::1 as IP on localhost? 表明sudo 是:

sudo vi /etc/apache2/httpd.conf

所以我转到MAMP/conf/apache/httpd.conf 并尝试将第48 行从Listen 8888 修改为Listen 127.0.0.1,我收到一个错误并且Apache 不会重新启动。如何修改我的 MAMP IP,以便从 $_SERVER['HTTP_USER_AGENT'] 获得正确的 IP?

【问题讨论】:

    标签: wordpress ip mamp akismet


    【解决方案1】:

    它是::1,因为这是 IPv6 环回地址,相当于127.0.0.1,并且远程地址是您自己,因为 MAMP 在本地运行,远程浏览器在同一台机器上。

    REMOTE_ADDR 表示请求来自的 IP。在大多数情况下,这与浏览器机器在开放互联网上的 IP 相同,但这里 MAMP 本地运行 Apache,因此它是 127.0.0.1::1。如果您使用的是 docker 容器或虚拟机,它将是配置容器/VM 时指定范围内的私有 IP。

    因此,要检索您期望的 IP,您需要使用外部服务,或者,为了调试,向 Akismet 传递一个硬编码的 IP,但我怀疑它询问的是评论者的 IP。

    【讨论】:

      猜你喜欢
      • 2018-09-28
      • 1970-01-01
      • 2011-10-19
      • 2014-06-09
      • 2016-01-21
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      • 1970-01-01
      相关资源
      最近更新 更多