Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 9418|Vastaus: 0

[Web] Toteuta dynaamiset upstreamit Nginxin resolverilla

[Kopioi linkki]
Julkaistu 27.7.2019 22.23.00 | | |
Viime aikoina on ollut tarve tälle osa-alueelle työssäni: upstream on täysin dynaaminen, asiakas määrittelee sen, alussa on joitakin virheitä, ja lopuksi DNS-palvelu määritellään ratkaisijan kautta, tarkka prosessi on seuraava.

1. Aloita astuminen kuoppaan päälle

Nginxin konfiguraatio on seuraava:

Kun lähetän tällaisen pyynnön:


Seuraava virhe raportoitiin:

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

error.log:
2017/09/14 23:38:31 [virhe] 25307#25307: *48 ei ratkaisevaa ratkaisuawww.baidu.com, asiakas: 127.0.0.1, palvelin: localhost, pyyntö: "GET / HTTP/1.1", isäntä: "127.0.0.1:8001"
On selvää, että tämä ongelma tarkoittaa, että ratkaisijan määrittämättä jättäminen aiheuttaa mukautettuja upstreamwww.baidu.com.

2. Käytä Resolveria verkkotunnuksen resoluutioon määrittämiseen

Muokattu nginx-konfiguraatio on seuraava:

Nyt pyynnöt ovat normaalit 200:

req:
curl "127.0.0.1:8001/" -H "upstream-isäntä:www.baidu.com" -Voa
curl "127.0.0.1:8001/" -H "upstream-isäntä:www.qq.com" -Voa

access.log:
127.0.0.1 - - [14.9.2017:23:44:01 +0800] "GET / HTTP/1.1" 200 2381 "-" "curl/7.29.0"
127.0.0.1 - - [14.9.2017:23:44:07 +0800] "GET / HTTP/1.1" 200 244182 "-" "curl/7.29.0"
3. Resolverin ohjeet

Resolverin syntaksi on seuraava:

Syntax: resolver address ... [valid=time] [ipv6=on|off];
Default:    —
Context:    http, server, location
Voit konfiguroida useita DNS-palveluita, nginx käyttää kyselyä päästäkseen DNS-palveluihin, nginx välimuistittaa DNS-verkkotunnuksen ratkaisutulokset, välimuistiaika määritellään validilla ja IPv6:ta käytetään IPv6:n näyttämiseen päällä tai pois päältä.

resolver_timeout käytetään DNS-resoluution aikakatkaisun määrittämiseen.





Edellinen:Jaa henkilökohtainen FTP-rakennusohjelmisto
Seuraava:Alibaba Cloud OSS Nginx käänteinen proxy-konfiguraatio
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com