Nginx 動(dòng)態(tài)域名解析過(guò)程詳解
摘要
Nginx
進(jìn)行反向代理的時(shí)候會(huì)進(jìn)行域名解析,把域名解析為具體IP
后緩存在本地,如果域名對(duì)應(yīng)的IP
發(fā)生了改變,則會(huì)導(dǎo)致Nginx
代理失效,下面使用Nginx
的resolver
指令來(lái)實(shí)現(xiàn)域名動(dòng)態(tài)解析。
基于自定義DNS服務(wù)器動(dòng)態(tài)解析
內(nèi)網(wǎng)DNS
服務(wù)器我使用的是dnsmasq
default.conf配置
server { listen 80; root /usr/share/nginx/html/; resolver 192.168.137.110 valid=5s; set $proxy_url huzhihui.local; include /etc/nginx/default.d/*.conf; location / { index index.html index.htm; try_files $uri $uri/ /index.html; client_max_body_size 100m; add_header tenantId $arg_tenantId; add_header appId $arg_appId; } location /api/ { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; rewrite /api/(.*) /$1 break; proxy_pass http://$proxy_url:8070; } }
主要配置點(diǎn)
resolver
:配置DNS服務(wù)器,和解析地址的有效期valid
,
set
:用來(lái)配合resolver
做域名的IP
地址解析
rewrite
:對(duì)訪(fǎng)問(wèn)路徑進(jìn)行修改
proxy_pass
:實(shí)際跳轉(zhuǎn)到的代理服務(wù),不要帶路徑參數(shù),因?yàn)樯厦嬉呀?jīng)用rewrite
重寫(xiě)了
啟動(dòng)訪(fǎng)問(wèn)
基于K8S的CoreDns動(dòng)態(tài)域名解析
default.conf
server { listen 80; root /usr/share/nginx/html/; resolver kube-dns.kube-system.svc.cluster.local valid=10s; set $a_part_host a-part-http-service.huzhihui.svc.cluster.local; include /etc/nginx/default.d/*.conf; location / { index index.html index.htm; try_files $uri $uri/ /index.html; client_max_body_size 100m; add_header tenantId $arg_tenantId; add_header appId $arg_appId; } location /api/ { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://127.0.0.1:5031/; } location /a-part/ { client_max_body_size 100m; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; rewrite /a-part/(.*) /api/$1 break; proxy_pass http://$a_part_host; } location ~ .*\.(html)$ { #html disabled cache add_header Cache-Control no-store; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
主要配置點(diǎn)
kube-dns.kube-system.svc.cluster.local
:這個(gè)域名是K8S DNS
的域名a-part-http-service.huzhihui.svc.cluster.local
:a-part-http-service
是K8S
定義的svc
名稱(chēng),huzhihui
是我定義的namespaces
,
做完上面的配置,svc
重啟后ip
改變也不會(huì)導(dǎo)致反向代理失效了。
以上就是Nginx 動(dòng)態(tài)域名解析過(guò)程詳解的詳細(xì)內(nèi)容,更多關(guān)于Nginx 動(dòng)態(tài)域名的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Nginx?403?forbidden錯(cuò)誤的原因以及解決方法
yum安裝nginx,安裝一切正常,但是訪(fǎng)問(wèn)時(shí)報(bào)403 forbidden,下面這篇文章主要給大家介紹了關(guān)于Nginx?403?forbidden錯(cuò)誤的原因以及解決方法,需要的朋友可以參考下2022-08-08基于Nginx+lua實(shí)現(xiàn)簡(jiǎn)單的XSS攻擊攔截
WAF即web應(yīng)用防火墻,Nginx是一個(gè)主流的代理服務(wù),除了本身的Nginx日志,作為用戶(hù)肯定也支持對(duì)請(qǐng)求信息進(jìn)行操作,?很多都是通過(guò)在代理服務(wù)器上掛載規(guī)則特征,實(shí)現(xiàn)軟件層面的軟WAF進(jìn)行WEB防護(hù),本文主要給大家介紹了Nginx+Lua實(shí)現(xiàn)一個(gè)簡(jiǎn)單的XSS攻擊攔截,需要的朋友可以參考下2024-01-01Nginx+Tomcat群集的實(shí)現(xiàn)示例
這篇文章主要介紹了Nginx+Tomcat群集的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07Nginx與Lua灰度發(fā)布的實(shí)現(xiàn)
這篇文章主要介紹了Nginx與Lua灰度發(fā)布的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03通過(guò)nginx反向代理來(lái)調(diào)試代碼的實(shí)現(xiàn)
這篇文章主要介紹了通過(guò)nginx反向代理來(lái)調(diào)試代碼的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01nginx限速配置的三種方法(limit_req、limit_conn、limit_rate)
本文主要介紹了nginx限速配置的三種方法,主要包括limit_req、limit_conn、limit_rate,本文就詳細(xì)的介紹一下如何使用,感興趣的可以了解一下2023-08-08nginx-ingress-controller日志持久化方案的解決
這篇文章主要介紹了nginx-ingress-controller日志持久化方案的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03詳解nginx安裝過(guò)程并代理下載服務(wù)器文件
Nginx是一款輕量級(jí)的web服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,在BSD-like?協(xié)議下發(fā)行,這篇文章主要介紹了詳解nginx安裝過(guò)程并代理下載服務(wù)器文件,需要的朋友可以參考下2022-02-02