.npmrc
파일 에서 프록시 변수에 대해 읽었 지만 작동하지 않습니다. 모든 패키지를 수동으로 다운로드하지 않으려면 패키지가 필요합니다.
답변
이 방법 으로이 문제를 해결했습니다.
-
이 명령을 실행합니다 :
npm config set strict-ssl false
-
그런 다음 https 대신 http로 실행되도록 npm을 설정하십시오.
npm config set registry "http://registry.npmjs.org/"
-
그런 다음이 구문을 사용하여 패키지를 설치합니다.
npm --proxy http://username:password@cacheaddress.com.br:80 install packagename
username:password
프록시가 인증을 요구하지 않으면 부분을 건너 뛰십시오.
편집 : 광산의 친구가 당신이 설정하여 프록시 뒤에 작업에 NPM을 얻을 수 있음을 지적 BOTH 명령을 한 후, HTTP_PROXY와 https_proxy를 환경 변수를 정상적으로 발행 Express를 설치 NPM (예를 들어)
EDIT2 : @BStruthers가 언급했듯이, @이 포함 된 경우 전체 비밀번호를 따옴표로 묶으면 “@”가 포함 된 비밀번호는 올바르게 구문 분석되지 않습니다.
답변
npm
프록시 설정
의 경우 HTTP
:
npm config set proxy http://proxy_host:port
의 경우 HTTPS
:
https 프록시 주소가 있으면 사용하십시오
npm config set https-proxy https://proxy.company.com:8080
그렇지 않으면 http 프록시 주소를 재사용하십시오
npm config set https-proxy http://proxy.company.com:8080
참고 : https-proxy에는 https
프로토콜이 없지만 http
.
답변
의심스러운 경우 다음과 같이 모든 명령을 시도하십시오.
npm config set registry http://registry.npmjs.org/
npm config set proxy http://myusername:mypassword@proxy.us.somecompany:8080
npm config set https-proxy http://myusername:mypassword@proxy.us.somecompany:8080
npm config set strict-ssl false
set HTTPS_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
set HTTP_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
export HTTPS_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
export HTTP_PROXY=http://myusername:mypassword@proxy.us.somecompany:8080
export http_proxy=http://myusername:mypassword@proxy.us.somecompany:8080
npm --proxy http://myusername:mypassword@proxy.us.somecompany:8080 \
--without-ssl --insecure -g install
=======
최신 정보
설정을 ~/.bashrc
넣거나 ~/.bash_profile
새 터미널 창을 열 때마다 설정에 대해 걱정할 필요가 없습니다!
귀하의 회사가 내 회사 인 경우 비밀번호를 자주 변경해야합니다. 그래서 터미널을 열 때마다 npm이 최신 상태임을 알 수 있도록 ~ / .bashrc 또는 ~ / .bash_profile에 다음을 추가했습니다!
-
~/.bashrc
파일 하단에 다음 코드를 붙여 넣기 만하면 됩니다.###################### # User Variables (Edit These!) ###################### username="myusername" password="mypassword" proxy="mycompany:8080" ###################### # Environement Variables # (npm does use these variables, and they are vital to lots of applications) ###################### export HTTPS_PROXY="http://$username:$password@$proxy" export HTTP_PROXY="http://$username:$password@$proxy" export http_proxy="http://$username:$password@$proxy" export https_proxy="http://$username:$password@$proxy" export all_proxy="http://$username:$password@$proxy" export ftp_proxy="http://$username:$password@$proxy" export dns_proxy="http://$username:$password@$proxy" export rsync_proxy="http://$username:$password@$proxy" export no_proxy="127.0.0.10/8, localhost, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16" ###################### # npm Settings ###################### npm config set registry http://registry.npmjs.org/ npm config set proxy "http://$username:$password@$proxy" npm config set https-proxy "http://$username:$password@$proxy" npm config set strict-ssl false echo "registry=http://registry.npmjs.org/" > ~/.npmrc echo "proxy=http://$username:$password@$proxy" >> ~/.npmrc echo "strict-ssl=false" >> ~/.npmrc echo "http-proxy=http://$username:$password@$proxy" >> ~/.npmrc echo "http_proxy=http://$username:$password@$proxy" >> ~/.npmrc echo "https_proxy=http://$username:$password@$proxy" >> ~/.npmrc echo "https-proxy=http://$username:$password@$proxy" >> ~/.npmrc ###################### # WGET SETTINGS # (Bonus Settings! Not required for npm to work, but needed for lots of other programs) ###################### echo "https_proxy = http://$username:$password@$proxy/" > ~/.wgetrc echo "http_proxy = http://$username:$password@$proxy/" >> ~/.wgetrc echo "ftp_proxy = http://$username:$password@$proxy/" >> ~/.wgetrc echo "use_proxy = on" >> ~/.wgetrc ###################### # CURL SETTINGS # (Bonus Settings! Not required for npm to work, but needed for lots of other programs) ###################### echo "proxy=http://$username:$password@$proxy" > ~/.curlrc
-
그런 다음 붙여 넣은 코드에서 “username”, “password”및 “proxy”필드를 편집하십시오.
-
새 터미널을여십시오
-
를 실행하여 설정을 확인
npm config list
하고cat ~/.npmrc
-
사용하여 모듈을 설치하십시오
npm install __
또는npm --without-ssl --insecure install __
또는- 을 사용하여 프록시 설정을 무시하십시오
npm --without-ssl --insecure --proxy http://username:password@proxy:8080 install __
. - 모듈을 전체적으로 사용할 수있게하려면 옵션 추가
-g
답변
.npmrc
파일 대신 명령 행 옵션을 사용해 보셨습니까 ?
나는 같은 것이 npm --proxy http://proxy-server:8080/ install {package-name}
나를 위해 일 했다고 생각한다 .
또한 다음을 보았습니다.
npm config set proxy http://proxy-server:8080/
답변
좋은 조언이 많이 있지만 내 환경 (Windows PowerShell 사용)과 node.js (v8.1.2)의 마지막 버전에 대해서는 brunowego를 따를 때를 제외하고 위의 모든 기능이 작동하지 않았습니다. 설정을 .
따라서 다음을 사용하여 설정을 확인하십시오.
npm config list
프록시 뒤의 설정 :
npm config set registry http://registry.npmjs.org/
npm config set http-proxy http://username:password@ip:port
npm config set https-proxy http://username:password@ip:port
npm config set proxy http://username:password@ip:port
npm set strict-ssl false
이것이 누군가에게 시간을 절약 할 수 있기를 바랍니다.
답변
이것은 Windows에서 저에게 효과적입니다.
npm config set proxy http://domain%5Cuser:pass@host:port
도메인이 아닌 경우 다음을 사용하십시오.
npm config set proxy http://user:pass@host:port
암호 같은 특수 문자가 포함 된 경우 "
, @
, :
등, 자신의 URL 인코딩 된 값으로 교체합니다. 예를 들어 "
-> %22
, @
-> %40
, :
-> %3A
입니다. %5C
캐릭터에 사용됩니다 \
.
답변
http 프록시를 설정하려면 -g 플래그를 설정하십시오.
sudo npm config set proxy http://proxy_host:port -g
https 프록시의 경우 -g 플래그가 다시 설정되어 있는지 확인하십시오 .
sudo npm config set https-proxy http://proxy_host:port -g