Intraneti leht brauseris tõestab ainult, et proxy töötab brauseri jaoks, mitte npm või Maveni jaoks. Iga klient loeb oma konfiguratsiooni ja ainult VPN-i kaudu ligipääsetav võrk lisab teise küsimuse: kas klient jõuab proxyni üldse. Alusta olekukoodist ja järgi seejärel selle tööriista konfiguratsiooniahelat, mis ebaõnnestus. Seepärast üks klient töötab ja naaber mitte.

Mida 407 tegelikult tõestab

407 Proxy Authentication Required tuleb proxylt, mitte registrist ega hoidlast. Klient jõudis proxyni ja proxy keeldus päringust, tavaliselt seetõttu, et mandaadid puudusid, olid vales vormingus või ei olnud selle sihtkoha jaoks lubatud.

Aegumine räägib teist lugu: vale proxy aadress, puudub tee proxyni enne tunnelit või puudub möödasõidu kirje sisemise hosti jaoks. Loe veateksti enne mandaatide muutmist.

Kontrolli proxy hosti, porti, autentimisskeemi ja seda, kas kasutajanimi vajab domeeni eesliidet. Seejärel vaata, kas tööriist loeb väärtuse failist, keskkonnamuutujast või mõlemast. Domeeniga kasutajanimi on sage 407 põhjus, nagu ka vale kodeeringuga salvestatud parool.

npm loeb oma konfiguratsiooniahelat

npm aktsepteerib võtmeid proxy ja https-proxy kasutaja või projekti .npmrc failis. Märgi skeem, sest väärtused on URL-id, ja kodeeri parooli reserveeritud märgid URL-kodeeringuga, et at-märk väärtust ei lõhuks.

proxy=http://proxy.example.com:8080
https-proxy=http://proxy.example.com:8080
strict-ssl=true

npm config list abil näed, milline fail andis iga kehtiva väärtuse. Shell export nagu npm_config_proxy võib faili üle kirjutada ja isikliku parooliga projekti .npmrc ei tohiks kunagi commitida. Trüki välja allika tee ja väärtus.

Jäta strict-ssl sisse lülitatuks. TLS-i kontrolliv proxy võib nõuda ettevõtte CA-d usaldushoidlas; verifitseerimise väljalülitamine vea möödamiseks peidab tegeliku usaldusprobleemi.

Maven eraldab proxyd peegeldustest

Maven loeb proxysid ja peegeldusi kasutaja seadete failist, mitte projekti pom-ist. Võrgupõhised proxyd ja sisemise hoidla peegeldused pane ~/.m2/settings.xml, avalikud hoidlate deklaratsioonid jäta projekti.

Proxy plokk vajab id-d, aktiivsuse lippu, protokolli, hosti ja porti ning nonProxyHosts kirjet sisemise hoidla jaoks. Hoia need väljad kasutaja seadete failis, mitte projekti pom-is, et võrgu muutus ei kirjutaks kogu meeskonna buildi üle.

Lisa sisemine hoidla nonProxyHosts, et Maven ühenduks otse. Ilma selle kirjeta on proxy tarbetu peatus ja tõrge näeb välja nagu hoidla katkestus. Peegelduse kirje osutab sisemisele hoidlale ega asenda proxy seadet.

Võrkude vahel liikuvad arendajad saavad hoida võrgu kohta ühe seadete faili ja valida shelli käivitamisel õige koopia. Ühe faili käsitsi muutmine igal üleminekul muudab töötava sülearvuti tugipiletiks.

VS Code ja dev-konteinerid on eri nimeruumides

VS Code loeb http.proxy kasutaja või tööruumi seadetest, sealhulgas skeem ja port. See katab redaktori enda laienduste ja turu päringud, kuid ei seadista terminali ega redaktorist käivitatud konteinerit. Kontrolli seade ulatust ja väärtust. Tööruumi seade võib kasutaja seade ühe projekti jaoks üle kirjutada.

Dev-konteineril on oma võrgu nimeruum. See ei päri hosti proxy muutujaid ega VPN-teed, mistõttu võib turu kutse konteineris ebaõnnestuda, samal ajal kui sama kutse hostis töötab.

Anna konteinerile need muutujad või oma resolver ja tee. Kui nimed lahenevad sees, aga proxy ei vasta kunagi, on puudu tavaliselt tee, mitte aadress.

Möödasõiduloendid ja keskkonna tähtsusjärjekord

Lisa VPN-lüüs, sisemised registrid ja privaatsed DNS-sufiksid möödasõiduloendisse. Kui klient üritab lüüsini jõuda proxyni kaudu enne tunnelit, ebaõnnestub ühendus nii, et see näeb välja nagu proxy katkestus. Testi seda väljalülitatud tunneliga.

Keskkonnamuutujad ja failid võivad lahkneda. Käivita tööriista enda konfiguratsiooni dump, mitte shelli oma, ja võrdle väärtusi. Väiketähtedega duplikaatmuutuja, vana väärtus ülem shellis või projekti fail võivad hiljuti muudetud seade üle kirjutada.

CI-s anna proxy salajase muutujana ja testi ühe paketi paigaldust samas images. 407 konteineris tähendab sageli, et muutuja lihtsalt puudub seal, samal ajal kui hosti shellis on see olemas.

Kirjuta üles proxy host, port, möödasõidu sufiksid ja neid andev fail või muutuja iga tööriista jaoks. Kui üks klient tagastab 407 ja teine töötab, muudab see märge nelja erineva konfiguratsiooni võrdluse lühikeseks kontrolliks.

Seotud artiklid