Xinu

nginx反向代理DNS缓存问题
nginx反向代理DNS缓存问题遇到的问题nginx中使用反向代理,目标服务器更换解析ip后,请求无法代理到新服务...
扫描右侧二维码阅读全文
08
2021/04

nginx反向代理DNS缓存问题

nginx反向代理DNS缓存问题

遇到的问题

nginx中使用反向代理,目标服务器更换解析ip后,请求无法代理到新服务器上

原因

nginx在启动的时候会将代理服务器域名解析的ip地址缓存起来。

解决方案

方案一

重启nginx,会重新缓存DNS解析结果

方案二

使用 resolver配置解决

nginx中配置解析服务器,搭配变量解析。可在http|server|location中设置

resolver address1 address2 [valid=time] [ipv6=on|off] [status_zone=zone]

多个地址之间,使用空格分开,valid设置缓存时间,是否关闭ipv6地址解析,默认开启

server {
    resolver 114.114.114.114 8.8.8.8 valid=3600s;
    resolver_timeout 3s;
    set $proxy_url http://a.com;
    location /test/ {
        proxy_pass $proxy_url;
    }
}
Last modification:June 22nd, 2021 at 07:22 pm

Leave a Comment