Toimiva intrasivusto selaimessa todistaa vain, että proxy toimii selaimelle, ei npmille tai Mavenille. Jokainen asiakas lukee oman asetuksensa, ja vain VPN:n kautta tavoitettava verkko lisää toisen kysymyksen: pääseekö asiakas ylipäätään proxyyn. Aloita tilakoodista ja seuraa sitten sen työkalun asetusten ketjua, joka epäonnistui. Siksi yksi asiakas toimii ja viereinen ei.

Mitä 407 todella todistaa

407 Proxy Authentication Required tulee proxylta, ei rekisteristä tai repositoriosta. Asiakas pääsi proxyyn ja proxy hylkäsi pyynnön, yleensä siksi, että tunnistetiedot puuttuivat, olivat väärässä muodossa tai niitä ei hyväksytty kyseiselle kohteelle.

Aikakatkaisu kertoo toista tarinaa: väärä proxy-osoite, ei reittiä proxyyn ennen tunnelin nousua tai puuttuva ohitusmerkintä sisäiselle isäntälle. Lue virheteksti ennen kuin muutat tunnistetietoja.

Varmista proxyn isäntä, portti, todennusmenetelmä ja se, tarvitseeko käyttäjätunnus toimialueen etuliitteen. Tarkista sitten, lukeeko työkalu arvon tiedostosta, ympäristömuuttujasta vai molemmista. Toimialueellinen käyttäjätunnus on yleinen 407:n syy, samoin väärällä koodauksella tallennettu salasana.

npm lukee oman asetustensa ketjua

npm hyväksyy avaimet proxy ja https-proxy käyttäjän tai projektin .npmrc-tiedostossa. Merkitse skeema, koska arvot ovat URL-osoitteita, ja koodaa salasanan varatut merkit URL-muotoon, jotta at-merkki ei jaa arvoa.

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

npm config list näyttää, mikä tiedosto antoi kunkin tehokkaan arvon. Shellin vienti kuten npm_config_proxy voi ohittaa tiedoston, eikä projektin .npmrc henkilökohtaisella salasanalla kuulu koskaan committiin. Tulosta lähdepolku ja arvo.

Jätä strict-ssl päälle. TLS:ää tarkkaileva proxy voi vaatia yrityksen CA:n luottamusvarastoon; varmennuksen sammuttaminen virheen ohittamiseksi kätkee todellisen luottamusongelman.

Maven erottaa proxyt peileistä

Maven lukee proxyt ja peilit käyttäjän asetustiedostosta, ei projektin pom-tiedostosta. Laita verkkokohtaiset proxyt ja sisäisen repositorion peilit tiedostoon ~/.m2/settings.xml ja jätä julkiset repositoriomääritykset projektiin.

Proxy-lohko tarvitsee id:n, aktiivisuuslipun, protokollan, isännän ja portin sekä nonProxyHosts-merkinnän sisäiselle repositoriolle. Pidä nämä kentät käyttäjän asetustiedostossa, älä projektin pomissa, jotta verkon muutos ei kirjoita koko tiimin buildia uudelleen.

Lisää sisäinen repositorio kohtaan nonProxyHosts, jotta Maven yhdistää suoraan. Ilman merkintää proxysta tulee tarpeeton välipysäkki ja vika näyttää repositorion katkokselta. Peilimerkintä osoittaa sisäiseen repositorioon eikä korvaa proxyasetusta.

Verkkojen välillä liikkuvat kehittäjät voivat pitää yhden asetustiedoston verkkoa kohden ja valita oikean kopion shellin käynnistyessä. Yhden tiedoston muokkaaminen käsin joka siirtymässä tekee toimivasta kannettavasta tukipyynnön.

VS Codella ja dev-konttienerilla on eri nimiavaruudet

VS Code lukee http.proxy-asetuksen käyttäjän tai työtilan asetuksista, skeema ja portti mukaan lukien. Se kattaa editorin omat laajennus- ja marketplace-pyynnöt, mutta ei määritä terminaalia tai editorista käynnistettyä konttia. Tarkista asetuksen laajuus ja arvo. Työtilan asetus voi ohittaa käyttäjän asetuksen yhden projektin osalta.

Dev-kontilla on oma verkon nimiavaruutensa. Se ei peri isännän proxy-muuttujia eikä VPN-reittiä, siksi marketplace-kutsu voi epäonnistua kontin sisällä, kun sama kutsu toimii isännällä.

Anna kontille nuo muuttujat tai oma resolveri ja reitti. Kun nimet ratkeavat sisällä mutta proxy ei koskaan vastaa, puuttuva osa on yleensä reitti, ei osoite.

Ohituslistat ja ympäristön etusija

Lisää VPN-yhdyskäytävä, sisäiset rekisterit ja yksityiset DNS-päätteet ohituslistalle. Jos asiakas yrittää yhdyskäytävään proxyn kautta ennen tunnelin olemassaoloa, yhteys epäonnistuu niin, että se näyttää proxyn katkokselta. Testaa ohitus tunnelin ollessa alhaalla.

Ympäristömuuttujat ja tiedostot voivat olla eri mieltä. Aja työkalun oma asetusten tuloste, ei shellin, ja vertaa raportoituja arvoja. Pienikirjaiminen kaksoismuuttuja, vanhentunut arvo ylemmässä shellissä tai projektitiedosto voivat voittaa juuri muuttamasi asetuksen.

CI:ssä välitä proxy salaisena muuttujana ja testaa yhden paketin asennus samassa imagessa. 407 kontissa tarkoittaa usein, että muuttuja yksinkertaisesti puuttuu sieltä, kun isännän shellissä se on.

Kirjaa proxyn isäntä, portti, ohituspäätteet ja ne antava tiedosto tai muuttuja jokaiselle työkalulle. Kun yksi asiakas palauttaa 407 ja toinen toimii, merkintä muuttaa neljän eri kokoonpanon vertailun lyhyeksi tarkistukseksi.

Aiheeseen liittyvät artikkelit