ለHTTP እና HTTPS የnpm ፕሮክሲ ቅንብሮች
የnpm HTTPና HTTPS ፕሮክሲ መንገዶችን ያዋቅሩ፣ noproxy ልዩ ሁኔታዎችን ይረዱና TLS ማረጋገጥ ሳያጠፉ የግል CA ይጠቀሙ።
npm የተለዩ proxy እና https-proxy ቅንብሮች አሉት። ልዩነቱ ጥያቄ የሚቀርብለት መድረሻ ነው። HTTPSን የሚያስተላልፍ ዋሻ ለሚፈጥር መደበኛ HTTP ፕሮክሲ ሁለቱም እሴቶች ወደ ተመሳሳይ http:// መገናኛ ሊጠቁሙ ይችላሉ።
በፕሮጀክት ደረጃ ያለ .npmrc ይህን ሊይዝ ይችላል፦
proxy=http://203.0.113.10:8080
https-proxy=http://203.0.113.10:8080
noproxy=localhost,127.0.0.1,registry.example.internal
የሰነዱን መገናኛ በራስዎ ፕሮክሲ ይተኩ፤ ለተፈቀዱ የሕዝብ ሬጂስትሪ ሙከራዎች HTTP ፕሮክሲ ዝርዝር የHTTP አማራጮችን ይሰጣል። የመጨረሻው መስመር የተጠቀሰውን ውስጣዊ ሬጂስትሪ ሆን ብሎ ቀጥተኛ ያደርገዋል። ሌላ የፕሮክሲ አድራሻ አይደለም።
npm ጥያቄ እንዲልክ ያድርጉ
ከመሸጎጫ መጫን ደካማ የመንገድ ሙከራ ነው፤ npm የሚፈልገውን ሁሉ ቀድሞ ሊይዝ ይችላል። የሬጂስትሪ ping አነስተኛ ምርመራ ነው፦
npm ping --registry=https://registry.npmjs.org/
በተሳካ ሁኔታ መጠናቀቁ ይህ የnpm ጥሪ ወደዚያ ሬጂስትሪ መንገድ እንደደረሰ ያሳያል። እያንዳንዱ tarball አስተናጋጅ፣ Git ጥገኛ ወይም የተለየ የጥቅል አስተዳዳሪ ሂደት ተመሳሳይ መንገድ እንደሚጠቀም አያረጋግጥም።
የሚጋጭ ቅንብር ለማግኘት ተጨማሪ ፋይሎችን ወዲያው ከማረም ይልቅ በሥራ ላይ ያሉትን እሴቶች ይፈትሹ፦
npm config get proxy
npm config get https-proxy
npm config get noproxy
የመግቢያ መረጃ በURL ውስጥ ካለ እነዚህ ትዕዛዞች ሊያትሙት ይችላሉ። ውጤቱን ሳይቀይሩ በችግር ሪፖርት ከመለጠፍ ይልቅ በራስዎ መሣሪያ ይፈትሹ።
የፕሮጀክት .npmrc ለአጠቃላይ ጭነቶች አይጠቀምም። npm install -g ብቻ ካልተሳካ፣ የፕሮጀክቱን ፋይል አንብቧል ብለው ከመገመት ይልቅ የዚያን ጥሪ ውጤታማ ቅንብር ይፈትሹ።
IP ከመቀየር በፊት ልዩ ሁኔታዎችን ይፈትሹ
npm ከፕሮክሲ የአካባቢ ተለዋዋጮች ጋርም ይሠራል፣ የnoproxy ቅንብሩም ከNO_PROXY ሊመጣ ይችላል። በውጤታማው ቅንብር የተለየ መድረሻ የፕሮክሲ እሴት ቢኖርም ቀጥታ ሊገናኝ ይችላል። በተቃራኒው፣ ከአንድ .npmrc መስመር መሰረዝ የተወረሰ የአካባቢ ተለዋዋጭ አያስወግድም።
የምስክር ወረቀት ስህተቶችን ለዩ
የተፈቀደ መመርመሪያ ፕሮክሲ የድርጅት CA ሊፈልግ ይችላል፣ የNode/npm ቅንብርዎ ግን ገና ላይታመንበት ይችላል። npm የCA ፋይልን ይደግፋል፦
cafile=/path/to/approved-ca-bundle.pem
strict-ssl=true
ለዚያ አካባቢ ትክክለኛውን የጸደቀ ጥቅል ይጠቀሙ። strict-ssl=false ማድረግ የምስክር ወረቀት ማረጋገጥን ያዳክማል፤ ትክክለኛውን ፕሮክሲ ወይም የእምነት መረጃ መምረጥን አይተካም።
ሙከራው ሲያልቅ ያከሉትን የፕሮጀክት ተተኪ ቅንብሮች ያስወግዱና ውጤታማ እሴቶቹን እንደገና ይፈትሹ። ይህ በተመሳሳይ መሣሪያ ያሉ ሌሎች ፕሮጀክቶችን ሳይቀይር ፕሮጀክቱ የቀድሞውን ቅንብር እንዲወርስ ያደርጋል።