proxy_pass不使用/ etc/hosts解析DNS

Mar*_*ark 11 dns lua hosts nginx hosts-file

在nginx中,该proxy_pass指令不使用该/etc/hosts文件解析DNS .任何方式来实现这种可能性(可能通过利用Lua作为最后的手段)?

Epe*_*eli 8

如果您有一台带有 systemd 的服务器,您可以使用它附带的名称服务器 systemd-resolved 从文件中解析您的主机名/etc/hosts

只需将其添加到您的 nginx config或http块中:serverlocation

resolver 127.0.0.53;
Run Code Online (Sandbox Code Playgroud)

用于systemctl status systemd-resolved.service查看它是否在您的服务器上运行。


小智 5

总之,你需要在本地安装 dnsmasq 并使用 127.0.0.1 作为解析器。

请参阅此相关问答:

使用proxy_pass时,可以用/etc/hosts代替“resolver”来解析域名吗?