2017-03-28 32 views
0

Nexus 3.2、特にNPMリポジトリを現在設定しています。私はregistry.npmjs.orgを指し示すプロキシリポジトリを持っています。同じインスタンスのホストされたリポジトリに公開し、npm update -gを使用してインスタンス上のグループリポジトリを介してアーティファクトをダウンロードすることに成功しました。Nexus 3.2のプロキシ経由でスコープ設定されたNPMプロジェクト

残念なことに、スコープ設定されたプロジェクトをグループでダウンロードすることは機能しません。角度2の開発には必須です。私がしようとしたとき、私は404エラーを取得:

brian$ npm install "@angular/common" 
npm ERR! registry error parsing json 
npm ERR! Unexpected token < in JSON at position 0 
npm ERR! <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 
npm ERR! <html><head> 
npm ERR! <title>404 Not Found</title> 
npm ERR! </head><body> 
npm ERR! <h1>Not Found</h1> 
npm ERR! <p>The requested URL /nexus/repository/npm_group/@angular/common was not found on this server.</p> 
npm ERR! </body></html> 
npm ERR! 

npm ERR! A complete log of this run can be found in: 
npm ERR!  /Users/brian/.npm/_logs/2017-03-28T07_38_37_824Z-debug.log 

スコープは3.xのの非常にもてはやさ機能で、私は彼らが主に取り組んでいることを興奮します。私は保護されたリポジトリに公開することができ、プロキシリポジトリは非スコープの依存関係を設定しているので、私は非常に近いと思います。これをどのようにデバッグできますか?

FWIW、私は、Apache HTTPdのサーバーの背後にネクサスを持っている:

ProxyPass /nexus http://dev.example.com:8081/nexus nocanon 
ProxyPassReverse /nexus http://dev.example.com:8081/nexus 
    AllowEncodedSlashes On 
<Location /nexus> 
    RequestHeader set X-Forwarded-Proto "https" 
    RequestHeader set X-Forwarded-Port "443" 
</Location> 

感謝を!

答えて

1

を解決:This SO answerAllowEncodedSlashesを使用してのニュアンスを説明します。

バグ46830:AllowEncodedSlashesでは、グローバルコンテキストに設定されている場合、それは仮想ホストに継承されていません。すべてのコンテナにAllowEncodedSlashes Onを明示的に設定する必要があります。

私はそれはそれはSSLのためVirtualHost範囲に配置するために必要な、間違っていた持っていた範囲でAllowEncodedSlashesを追加し、上記の構成を持っていたとして。私の場合、それはNSSモジュールでした(私はFreeIPAによって更新された証明書を持っています)。

これが変更されると、すべてがうまくいった。

関連する問題