2

企業プロキシの背後にあるときに、npm ラッパーを介してPhantomJSをインストールしようとしています。npm 自体がレジストリと通信できるように、既に http_proxy および https_proxy 環境変数を設定しました。

export http_proxy=my-company-proxy.com:80
export https_proxy=my-company-proxy.com:80

しかし、phantomjs のノード install.js ステージになると、Protocol not supported エラーが発生しました。

http.js:1711
    throw new Error('Protocol:' + options.protocol + ' not supported.');
      ^
Error: Protocol:my-company-proxy.com: not supported.
4

2 に答える 2

1

問題は、phantomjs npm ラッパー コードが、プロキシ情報が単なるホスト名ではなく完全な URL であると想定していたことです。これにより、問題が解決されます。

export http_proxy=http://my-company-proxy.com:80
export https_proxy=http://my-company-proxy.com:80

npm、git などはどちらの形式でも問題なく動作しますが、この特定のパッケージでは、完全な URL を持つために HTTP_PROXY が必要です。

更新:この関連する問題は解決され、環境変数に依存するのではなく、npm 自体と同じ構成システムを使用できるようになりました (たとえば、npm config コマンドを使用した場合)。

于 2013-02-20T18:28:15.577 に答える