ファイル内のプロキシ変数について読み.npmrc
ますが、機能しません。すべての必要なパッケージを手動でダウンロードしてインストールすることを避けようとしています。
30 に答える
この問題を次のように解決しました。
次のコマンドを実行します。
npm config set strict-ssl false
次に、npm を https ではなく http で実行するように設定します。
npm config set registry "http://registry.npmjs.org/"
次に、次の構文を使用してパッケージをインストールします。
npm --proxy http://username:password@cacheaddress.com.br:80 install packagename
username:password
プロキシが認証を必要としない場合は、その部分をスキップしてください
編集:私の友人は、 HTTP_PROXY と HTTPS_PROXY の両方の環境変数を 設定することにより、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
: https-proxy はプロトコルとしてはありませんが、 http
.
ファイルの代わりにコマンドライン オプションを試しました.npmrc
か?
私は何かがnpm --proxy http://proxy-server:8080/ install {package-name}
私のために働いたと思います。
また、次のことも見ました。
npm config set proxy http://proxy-server:8080/
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
$ npm config set proxy http://login:pass@host:port
$ npm config set https-proxy http://login:pass@host:port
これらのオプションをすべて試しましたが、何らかの理由でプロキシにそれがありませんでした。curl
次に、絶望/絶望から生まれ、Git Bashシェルでランダムに試してみましたが、うまくいきました。
を使用してすべてのプロキシ オプションの設定を解除する
npm config rm proxy
npm config rm https-proxy
そしてnpm install
、Git Bash シェルでの実行は完全に機能しました。プロキシ用に正しく設定されているかどうかはわかりませんが、Windowscmd
プロンプトはそうではありませんが、機能しました。
Windows システムの場合
プロキシとレジストリの設定を削除して (既に設定されている場合)、コマンド ラインで環境変数を設定してみてください。
SET HTTP_PROXY=http://username:password@domain:port
SET HTTPS_PROXY=http://username:password@domain:port
次に、npm install を実行してみてください。これにより、プロキシを .npmrc に設定しなくなりますが、そのセッションでは機能します。
cmd、GIT Bash、またはその他のプロンプトで以下のコマンドを使用します
$ npm config set proxy " http://192.168.1.101:4128 "
$ npm config set https-proxy " http://192.168.1.101:4128 "
ここで、192.168.1.101 はプロキシ IP で、4128 はポートです。プロキシ設定に応じて変更します。その作品は私のために働きます。
npm config edit
新しいターミナルを開いて入力するだけnpm config -g edit
です. 既定値にリセット。その後、ターミナルを閉じて、新しいターミナルを開き、npm --without-ssl --insecure --proxy http://username:password@proxy:8080 install <package>
グローバルに追加する必要がある場合は入力し-g
ます。
それは私のために働いた、それがあなたのために働くことを願っています:)
プロキシ設定で http/http プレフィックスなしで与えると、プロキシ ホストとポートが正しい値であっても npm が失敗しました。プロトコルプレフィックスを追加した後にのみ機能しました。
私の問題は、私のばかげた間違いに帰着しました。ある日、プロキシを Windows の *.bat ファイル (http_proxy、https_proxy、および ftp_proxy) にすばやくドロップしたため、URL エンコードされたドメイン\ユーザー (%5C) と疑問符を持つパスワードの特殊文字をエスケープするのを忘れていました。 '?' (%3F)。つまり、エンコードされたコマンドを取得したら、bat ファイル コマンドで「%」をエスケープすることを忘れないでください。
私が変更され
set http_proxy=http://domain%5Cuser:password%3F@myproxy:8080
に
set http_proxy=http://domain%%5Cuser:password%%3F@myproxy:8080
エッジケースかもしれませんが、誰かの役に立てば幸いです。
環境変数に移動し、削除するか空に設定します
HTTP_PROXY と HTTPS_PROXY
企業環境のプロキシの問題も解決します