由于一些原因,需要反向代理一些ip经常变化的站点,最初以为只要把域名填好就行,ip变化的时候,nginx会根据ddns域名来回源,但是事实并非如此,在每一次更换ip地址之后,都要reload一下nginx。。。因为,nginx在启动时就已经把源站的域名解析成IP了,然后缓存它。。。如果域名的解析变了,nignx也不会有任何动作。
那么,解决方案是什么?
配置文件如下
server { ... ... resolver 8.8.8.8 valid=60s; resolver_timeout 60s; ... ... location / { ... ... set $mydomain example.com:8443; proxy_pass https://$mydomain; ... ... }
https://www.nginx.com/blog/dns-service-discovery-nginx-plus/
https://nginx.org/en/docs/http/ngx_http_core_module.html#resolver
THE END