proxy_pass不使用/etc/hosts解析DNS。

在 Nginx 中,proxy_pass 指令不会通过 /etc/hosts 文件解析 DNS。有没有办法启用这种可能性(可能通过利用 Lua 作为最后的手段)?

点赞
用户4584968
用户4584968

简而言之,您需要在本地安装 dnsmasq,并将 127.0.0.1 用作解析器。

请参阅此相关问题与答案:

当使用 proxy_pass 时,可以使用 /etc/hosts 来解析域名,而不是“resolver”吗?

2015-08-28 09:26:21
用户153718
用户153718

如果您有一个使用systemd的服务器,则可以使用该系统自带的nameserver,即systemd-resolved,从/etc/hosts文件中解析您的主机名。

只需将以下内容添加到您的nginx配置文件的httpserverlocation块中:

resolver 127.0.0.53;

使用systemctl status systemd-resolved.service命令查看系统是否正在运行。

2020-11-19 09:54:51