Ekipa v skupno okoljsko datoteko vnese en niz za obhod. curl gre neposredno, druga aplikacija uporablja proxy, vsebnik pa se obnaša spet drugače. Skupna datoteka je razdelila iste znake. Ni razdelila enega skupnega razčlenjevalnika.

Trajni objekt je politika: kateri cilji naj bodo neposredni in pod katerimi pogoji? To hranite ločeno od niza, ki ga potrebuje vsak program.

Najprej zapišite pričakovane poti

Uporabite reprezentativne naslove, vključno z mejnimi primeri in ne le preprostimi uspehi:

Oblika ciljaVprašanje za lastnika politike
Nadrejena domenaAli naj se obide, ali le njene poddomene?
PoddomenaAli podeduje isto pot?
Dobesedni zasebni IPAli je ta naslov neposredno dosegljiv s tega odjemalca?
Ista storitev pod imenom gostiteljaAli se morajo zahteve po imenu in po naslovu ujemati?
Druga vrata storitveAli izjema pokriva gostitelja ali enega poslušalca?

Nato določite uporabnike: demon, ki vleče sliko, program znotraj vsebnika, jezikovna knjižnica HTTP in interaktivni brskalnik so lahko ločeni vnosi. Konfiguracija proxyja odjemalca Docker lahko napolni okoljske vrednosti vsebnika, ne da bi moral vsak notranji odjemalec izvajati ista pravila ujemanja.

Prevajajte, namesto da slepo kopirate

En dokumentiran primer resnične razlike je meja nadrejene domene. Izključitev domene v curl zajema imenovano domeno in ujemajoče se poddomene. Okoljska politika .NET loči golo ime od oblike poddomene z vodilno piko. Univerzalno pravilo „vedno dodaj vodilno piko“ ne more zanesljivo izraziti obeh politik.

Podpora obsegom IP je odvisna tudi od uporabnika in njegove različice. Stroj z novim samostojnim curl lahko še vedno izvaja aplikacijo, povezano s starejšo libcurl, ali odjemalca, ki uporablja povsem drugo knjižnico. Izdaja operacijskega sistema ni popoln seznam odjemalcev.

Za vsakega uporabnika zapišite podprt vmesnik za konfiguracijo in najmanjši izraz predvidenih poti. Kratek izrecen seznam gostiteljev je lahko boljši od premetenega vzorca, katerega pomena nihče ne zna razložiti.

Dokaze o konfiguraciji hranite ločeno od dokazov o povezavi

Razčlenjena nastavitev ali API za odločitev o usmerjanju lahko pokaže, kaj je program izbral. Izid zahteve nato pokaže, ali je bila ta pot uporabna. V .NET HttpClient.DefaultProxy.IsBypassed zagotavlja to preverjanje na strani konfiguracije, ko je uporabljena politika privzeti proxy. Nedosegljive neposredne storitve ne diagnosticirajte kot okvaro razčlenjevalnika obhoda samo zato, ker je zahteva potekla.

Ob posodobitvi odjemalca ali osnovne slike obdržite mejne cilje. Ti naredijo prihodnje spremembe združljivosti vidne, ne da bi morala cela ekipa znova odkrivati, zakaj datoteka vsebuje dva podobna vnosa domene.

Sorodni članki