Nastavení proxy npm pro HTTP a HTTPS
Nastavte proxy trasy npm pro HTTP a HTTPS, pochopte výjimky noproxy a použijte soukromou CA bez vypnutí ověřování TLS.
npm má oddělená nastavení proxy a https-proxy. Rozdíl je v cíli požadavku. U běžné HTTP proxy tunelující HTTPS mohou obě hodnoty ukazovat na stejný koncový bod http://.
Projektový .npmrc může obsahovat:
proxy=http://203.0.113.10:8080
https-proxy=http://203.0.113.10:8080
noproxy=localhost,127.0.0.1,registry.example.internal
Dokumentační bod nahraďte svou proxy; pro povolené testy veřejného registru nabízí seznam HTTP proxy kandidáty HTTP. Poslední řádek záměrně ponechává uvedený interní registr přímý. Není to další adresa proxy.
Nechte npm odeslat požadavek
Instalace z mezipaměti je špatný test trasy: npm už může mít vše potřebné. Ping registru je menší kontrola:
npm ping --registry=https://registry.npmjs.org/
Úspěšné dokončení ukazuje, že toto spuštění npm dosáhlo trasy daného registru. Neprokazuje, že každý hostitel tarballu, závislost Git nebo samostatný proces správce balíčků používá stejnou cestu.
Při hledání konfliktního nastavení prohlédněte účinné hodnoty místo okamžitých úprav dalších souborů:
npm config get proxy
npm config get https-proxy
npm config get noproxy
Tyto příkazy mohou vypsat přihlašovací údaje, pokud jsou vložené do URL. Výstup prohlédněte místně, nevkládejte jej beze změny do hlášení problému.
Projektový .npmrc se nepoužívá pro globální instalace. Pokud selhává jen npm install -g, zkontrolujte účinné nastavení tohoto spuštění místo předpokladu, že četlo projektový soubor.
Před změnou IP zkontrolujte výjimky
npm pracuje i s proměnnými prostředí proxy a jeho nastavení noproxy může pocházet z NO_PROXY. Cíl vyloučený účinnou konfigurací se může připojit přímo, i když je proxy nastavena. Naopak smazání řádku z jednoho .npmrc neodstraní zděděnou proměnnou prostředí.
Chyby certifikátů řešte odděleně
Oprávněná inspekční proxy může vyžadovat organizační CA, které vaše prostředí Node/npm zatím nedůvěřuje. npm podporuje soubor CA:
cafile=/path/to/approved-ca-bundle.pem
strict-ssl=true
Použijte skutečný schválený balík pro dané prostředí. Nastavení strict-ssl=false oslabuje ověřování certifikátů; nenahrazuje výběr správné proxy ani důvěryhodných podkladů.
Po skončení testů odstraňte projektová přepsání, která jste přidali, a znovu prověřte účinné hodnoty. Projekt tak zdědí původní konfiguraci bez změn jiných projektů na stejném počítači.