要求本地 Apache 指令在 AWS EC2 实例上不起作用

要求本地 Apache 指令在 AWS EC2 实例上不起作用

我在 AWS EC2 实例上有一个 Apache 2.4 VirtualHost,其配置如下:

<Directory /srv/www/example.org>
    Require ip [REDACTED] # Office IP
    Require local
</Directory>

当我从编辑后的外部办公室 IP 地址发出请求时,它工作正常,但当我从 EC2 实例发出请求时,我收到 401 未授权错误。我尝试用 替换,Require localRequire ip 127.0.0.1无济于事。

我能够从本地机器发出请求的唯一方法是添加其外部 IP 地址,例如Require ip 123.45.67.89

我查看了访问日志,所有从本地机器发出的请求都记录为来自外部 IP 地址,而不是 127.0.0.1。

/etc/resolv.conf文件如下所示:

options timeout:2 attempts:5
; generated by /usr/sbin/dhclient-script
search eu-west-2.compute.internal
nameserver 172.31.0.2

发生这种情况可能是因为 IP/主机名正在由另一个 AWS 服务在外部解析?

我可以更改任何服务器配置,以便 Apache 将来自 EC2 实例的请求视为本地请求,以便我可以使用该Require local指令吗?

答案1

您在日志中看到的 IP 地址可能是 ec2 机器的内部 IP 地址。

或者,您可以更改您的要求行以使用主机名 localhost。这应该在 /etc/hostname 中正确定义

相关内容