从Artifactory安装作用域npm软件包

我正在尝试使范围限定的npm软件包与Apache背后的Artifactory一起使用。我可以将范围界定的包发布到Artifactory,它会在npm-

local存储库中创建以下路径:@scopename/packagename/-/@scopename/packagename-version.tgz

尝试安装此软件包时出现了我的问题。我得到一个404 Not Found:

@scopename/packagename。查看调试日志,我可以发现它可能与斜杠的编码有关:

22 http request GET https://artifacts.company.com/artifactory/api/npm/npm-local/@scopename%2fpackagename

23 http 404 https://artifacts.company.com/artifactory/api/npm/npm-local/@scopename%2fpackagename

我遵循了在线文档。我已添加AllowEncodedSlashes

NoDecode到虚拟主机和org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=truetomcat上的catalina.properties文件。

我想念什么吗?

回答:

这看起来像是反向代理问题。检查您的request.log。如果请求以/ api / npm / npm-group / @ angular /

core代替/ api / npm / npm-group / @ angular%2Fcore发出,则这是在反向代理中需要解决的问题。

您必须更改两件事:实现设置org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH =

true并从/etc/nginx/conf.d/default.conf中的proxy_pass变量中删除上下文根

以上是 从Artifactory安装作用域npm软件包 的全部内容, 来源链接: utcz.com/qa/419695.html

回到顶部