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 ਸਰਟੀਫਿਕੇਟ ਤਸਦੀਕ ਕਮਜ਼ੋਰ ਕਰਦਾ ਹੈ; ਸਹੀ ਪ੍ਰਾਕਸੀ ਜਾਂ ਭਰੋਸੇ ਦੀ ਸਮੱਗਰੀ ਚੁਣਨ ਦਾ ਬਦਲ ਨਹੀਂ।
ਜਾਂਚ ਮੁੱਕੇ ਤਾਂ ਜੋੜੇ ਪ੍ਰੋਜੈਕਟ ਓਵਰਰਾਈਡ ਹਟਾਓ ਅਤੇ ਪ੍ਰਭਾਵੀ ਮੁੱਲ ਫਿਰ ਵੇਖੋ। ਇਸ ਨਾਲ ਇੱਕੋ ਮਸ਼ੀਨ ਦੇ ਹੋਰ ਪ੍ਰੋਜੈਕਟ ਬਦਲੇ ਬਿਨਾਂ ਪਿਛਲੀ ਸੰਰਚਨਾ ਵਿਰਾਸਤ ਵਿੱਚ ਮਿਲਦੀ ਹੈ।