国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

詳解Nginx 動態 DNS 反向代理的幾種寫法

2024-08-30 12:25:02
字體:
來源:轉載
供稿:網友

這篇文章的更新拖了半個月,真的是感動中國了。

Nginx 默認會緩存 DNS,大家都知道,如果做反向代理,其實是訪問的目標 ip,所以一旦緩存了目標 ip 就會非常麻煩。

茴字的四種寫法遠近聞名,萬萬沒想到,Nginx 動態 DNS 反向代理也有 N 種玩法,這主要取決于你用的 Nginx 版本,當然運維告訴我,最好是不要用動態 DNS,但是基于業務需要,咱們也沒有辦法。

茴字的第一種寫法:Nginx

在 Nginx 中通過設置變量可以曲線救國,當然有缺點,通過變量的方法沒有辦法進行負載均衡,非常麻煩,當然如果你只有單機(在實際業務場景中幾乎不存在),還是可以一試的:

server {  ...  resolver 127.0.0.1;  set $backend "http://dynamic.example.com:80";  proxy_pass $backend;  ...}

第二種寫法:Nginx Plus

當然 Nginx 不太好用,增強版的 Plus 就提供了一個更棒的寫法,它支持在 server 中寫入:

server {  ...  resolver 127.0.0.1 valid=30s;  proxy_pass http://upstream-sites;  ...}

第三種寫法:Tengine

Tengine 是淘寶家的魔改 Nginx,其實我挺煩的,因為最開始我不知道我們用的是 Tengine,導致配置沒有什么卵用,但是 Tengine 對于動態域名解析卻支持的非常不錯,官方文檔寫得也很清楚。

upstream backend {  dynamic_resolve fallback=stale fail_timeout=30s;  server a.com;  server b.com;}server {  ...  location / {    proxy_pass http://backend;  }}

其他

當然,還可以使用 Lua 腳本來實現,或者是別人的模塊,但是考慮到怕鼓搗壞,我還是不亂折騰了,所以沒有采取這種方案。

參考

ngx_http_upstream_dynamic_module - Tengine
Using DNS for Service Discovery with NGINX and NGINX Plus

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持錯新站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东光县| 正定县| 博爱县| 汽车| 宁晋县| 西乡县| 海伦市| 孟连| 台东县| 阜康市| 曲阜市| 偃师市| 赣榆县| 湖州市| 仙桃市| 乳山市| 日照市| 清苑县| 巍山| 乌鲁木齐市| 永善县| 肇庆市| 新野县| 武威市| 磐安县| 宜城市| 江阴市| 贵港市| 临汾市| 高州市| 威宁| 循化| 辉南县| 汶上县| 唐山市| 连平县| 越西县| 沾化县| 莱芜市| 东方市| 剑阁县|