Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 9418|Svare: 0

[Web] Implementer dynamiske upstreams ved hjelp av Nginx sin resolver

[Kopier lenke]
Publisert på 27.07.2019 22:23:00 | | |
Nylig har det vært behov for dette aspektet i arbeidet mitt, oppstrøms er helt dynamisk, spesifisert av klienten, det er noen feil i starten, og til slutt er DNS-tjenesten spesifisert gjennom resolveren, den spesifikke prosessen er som følger.

1. Begynn å tråkke på gropen

Konfigurasjonen av nginx er som følger:

Når jeg sender denne typen forespørsel:


Følgende feil ble rapportert:

access.log:
127.0.0.1 - - [14/sep/2017:23:37:10 +0800] "GET / HTTP/1.1" 502 179 "-" "curl/7.29.0"

error.log:
2017/09/14 23:38:31 [feil] 25307#25307: *48 ingen resolver definert for å løsewww.baidu.com, klient: 127.0.0.1, server: localhost, forespørsel: "GET / HTTP/1.1", vert: "127.0.0.1:8001"
Det er tydelig at dette problemet sier at manglende spesifisering av en resolver fører til egendefinert upstreamwww.baidu.com.

2. Bruk Resolver for å definere domenenavnoppløsning

Den modifiserte nginx-konfigurasjonen er som følger:

Nå er forespørslene normale, 200:

req:
curl "127.0.0.1:8001/" -H "upstream-host:www.baidu.com" -voa
curl "127.0.0.1:8001/" -H "upstream-host:www.qq.com" -voa

access.log:
127.0.0.1 - - [14/sep/2017:23:44:01 +0800] "GET / HTTP/1.1" 200 2381 "-" "curl/7.29.0"
127.0.0.1 - - [14/sep/2017:23:44:07 +0800] "GET / HTTP/1.1" 200 244182 "-" "curl/7.29.0"
3. Resolver-instruksjoner

Syntaksen for resolveren er som følger:

Syntax: resolver address ... [valid=time] [ipv6=on|off];
Default:    —
Context:    http, server, location
Du kan konfigurere flere DNS-tjenester, nginx vil bruke polling for å få tilgang til DNS-tjenester, nginx vil cache resultatene av DNS-domenenavnoppløsning, cache-tiden er spesifisert som gyldig, og IPv6 brukes til å vise IPv6 av eller på.

resolver_timeout brukes til å spesifisere tidsavbruddet for DNS-oppløsning.





Foregående:Del en personlig FTP-byggeprogramvare
Neste:Alibaba Cloud OSS Nginx reverse proxy konfigurasjon
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com