我通过 PuTTY ssh 连接到 Linux 服务器(所以它不应该有 GUI)。
当我npm install
做某事时,由于一些内网网络配置,http请求被重定向如下
npm i express
npm WARN registry Unexpected warning for http://registry.npmjs.org/: Miscellaneous Warning SELF_SIGNED_CERT_IN_CHAIN: request to https://auth-fw-dc.mycompany.com:nnnn/php/uid.php?...&url=http://registry.npmjs.org%2fexpress failed
当然,这SELF_SIGNED_CERT_IN_CHAIN
源自重定向到我们的防火墙身份验证门户网站。
我猜这是我们 Intranet 中的网络配置错误,来自 npm 的 http 请求不应该被重定向到我们公司的防火墙,特别是因为我无法从 ssh 打开浏览器来在那里验证自己的身份:我猜对了吗?可以在这台机器上配置一些SSHnpm 的 Linux 命令?
答案1
清除npm缓存后显然解决了
rm ./package-lock.json
rm -r ./node_modules
npm cache clear --force
并重新配置了 https 连接但没有检查。
npm set strict-ssl false
和
npm config set registry https://registry.npmjs.org/
或同等地
npm config rm registry
(不确定在我给他们写信后网络团队是否还做了其他事情)
总之,在我的 Intranet 场景中,问题是由于以下 http 设置造成的(最初尝试规避 ssl 问题,请参见示例所以)
npm config set registry http://registry.npmjs.org/
并通过删除错误的命令来解决,如上所述。