2014-11-18 33 views
19

Khi tôi đang cố gắng để cài đặt grunt qua npm, tôi nhận được một lỗi sau:NodeJS NPM Proxy lỗi khi cài đặt grunt

C:\Program Files\nodejs\node_modules\npm>npm install -g grunt 
npm ERR! network connect ETIMEDOUT 
npm ERR! network This is most likely not a problem with npm itself 
npm ERR! network and is related to network connectivity. 
npm ERR! network In most cases you are behind a proxy or have bad network settings. 
npm ERR! network 
npm ERR! network If you are behind a proxy, please make sure that the 
npm ERR! network 'proxy' config is set properly. See: 'npm help config' 

npm ERR! System Windows_NT 6.1.7601 
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "grunt" 
npm ERR! cwd C:\Program Files\nodejs\node_modules\npm 
npm ERR! node -v v0.10.33 
npm ERR! npm -v 1.4.28 
npm ERR! syscall connect 
npm ERR! code ETIMEDOUT 
npm ERR! errno ETIMEDOUT 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  C:\Program Files\nodejs\node_modules\npm\npm-debug.log 
npm ERR! not ok code 0 

tôi đang sử dụng doanh nghiệp cấu hình proxy, và tôi tin rằng tôi m có lỗi này vì cấu hình của nó. Tôi cần thay đổi gì để cài đặt thành công?

Trả lời

20

Bạn cần phải cấu hình file config NPM, điều này có thể được thực hiện trong các thiết bị đầu cuối:

npm config set proxy http://proxy.company.com:8080 

npm config set https-proxy http://proxy.company.com:8080 

log lỗi của bạn gợi ý cho thấy 'NPM giúp đỡ config', vì vậy tôi nghĩ rằng vấn đề xuất phát từ đó.

Nếu bạn muốn có một liên kết với lời giải thích hơn thấy this blog entry (có rất nhiều hơn)

Chúc may mắn!

+3

Chỉ là cảnh báo cho người dùng khác, đừng quên thêm phần http: //! – rory

+1

đã làm việc cho tôi cảm ơn –

9

Nếu bạn đang làm việc sau một proxy trong một "cửa sổ" miền, thêm tên miền thành địa chỉ proxy:

npm config set proxy http://domain%5Cuser:[email protected]:8080 
npm config set https-proxy http://domain%5Cuser:[email protected]:8080 

Bạn cần phải mã hóa các dấu chéo ngược như là một chuỗi http uri:% 5C

Nếu có các ký tự đặc biệt trong tên người dùng hoặc mật khẩu của bạn, bạn cũng cần phải mã hóa các ký tự này. Hãy nhớ rằng những thông tin quan trọng này được lưu trữ dưới dạng văn bản thuần túy trong tệp cấu hình npm (% HOME% \. Npmrc). Cũng có thể cần phải chỉ định đăng ký npm cho nguồn http:

npm config set registry "http://registry.npmjs.org" 
npm config set strict-ssl false 
3

Cấu hình này phù hợp với tôi. Bạn cần phải kiểm tra các cổng http và https của bạn (thường là 80 và 443 tương ứng), nhưng trong trường hợp của tôi, tôi đang sử dụng cổng 80 cho cả hai.

npm config set proxy http://user:[email protected]:80 

npm config set https-proxy http://user:[email protected]:80 

Bạn có thể kiểm tra cài đặt proxy của bạn bằng cách get lệnh

npm config get proxy 

npm config get https-proxy 
1

xin vui lòng sử dụng NPM cấu hình thiết lập Proxy http://xx.aa.bb.cc:port nó làm việc cho tôi thanks a lot!

2

Tôi đã gặp vấn đề tương tự trước đây vì tôi đã chơi nhầm cấu hình proxy như thế này :

npm config set proxy http://localhost:8080/ npm config set https-proxy http://localhost:8080/ npm config set strict-ssl false

khiến NPM khách hàng cố gắng để đạt localhost: 8080 để kéo các mô-đun chứ không phải là thiết bị đầu cuối Internet chính xác.

nên sau vài ngày kể từ khi sự thất vọng tôi đến thăm liên kết này

https://docs.npmjs.com/cli/config

sau đó chạy

npm config edit 

mà mở một tập tin bên trong tập tin đó tôi loại bỏ những ba dòng i thêm trên, sau đó mọi thứ đều ổn.

0

Nếu bạn đang thất vọng và không ai trong số này khỉ-kinh doanh đang làm việc cho bạn, chỉ cần đi Tải về và chạy MSI mới nhất. https://nodejs.org/en/download/

1

bạn có thể chạy này trong cmd

npm config set <key> <value> [-g|--global] 
npm config get <key> 
npm config delete <key> 
npm config list 
npm config edit 
npm get <key> 
npm set <key> <value> [-g|--global] 

npmrc.txt sẽ chạy bạn có thể thay đổi liên kết và cổng của bạn

proxy =http://proxy.company.com:8080 

https-proxy = http://proxy.company.com:8080 

reference

0

Ba điều cần làm NPM làm việc cũng bên trong mạng proxy.

Bộ đăng ký npm được đặt này, Theo mặc định, nó có thể mất https.

npm config set registry " http://registry.npmjs.org/ "

Thứ hai là hai bộ proxy trong hệ thống của bạn. Nếu tổ chức của bạn sử dụng proxy hoặc bạn.

npm config set proxy " http://username:[email protected]:proxy-port "

npm config set https-proxy " http://username:[email protected]:proxy-port "

Các vấn đề liên quan