npm 手动指定代理
2025-10-18 17:28:14

在使用 npm 时,如果你需要手动指定代理(例如在公司网络或某些需要代理才能访问外部网络的环境下),可以通过以下几种方式来配置代理:

1. 命令行临时设置

当你执行 npm install 或其他网络请求命令时,可以通过命令行参数直接指定代理:

npm install --proxy http://your-proxy-url:port

或者,如果你使用的是 HTTPS 包,可以额外指定 HTTPS 代理:

npm install --proxy http://your-proxy-url:port --https-proxy http://your-proxy-url:port

这种方式只对当前命令有效,不会影响 npm 的全局配置。

2. 修改 npm 配置文件

设置代理

你可以通过 npm config 命令来设置代理,这会将配置写入到你的 npm 配置文件中(通常是 ~/.npmrc):

npm config set proxy http://your-proxy-url:port
npm config set https-proxy http://your-proxy-url:port

查看配置

确认设置是否成功:

npm config get proxy
npm config get https-proxy

删除代理配置

如果你需要取消代理设置,可以运行:

npm config delete proxy
npm config delete https-proxy

3. 直接编辑 .npmrc 文件

你也可以直接编辑项目根目录下的 .npmrc 文件或在用户主目录下的 .npmrc 文件(路径为 ~/.npmrc),添加如下内容:

proxy=http://your-proxy-url:port
https-proxy=http://your-proxy-url:port
strict-ssl=false
注意:strict-ssl=false 可以忽略 SSL 证书错误,仅在代理服务器要求时使用。

4. 使用认证信息的代理

如果你的代理需要用户名和密码,可以这样设置:

npm config set proxy http://username:password@your-proxy-url:port
npm config set https-proxy http://username:password@your-proxy-url:port

或者在 .npmrc 文件中:

proxy=http://username:password@your-proxy-url:port
https-proxy=http://username:password@your-proxy-url:port

5. 针对特定 registry 的代理

如果你只想对某个特定的 registry 使用代理,可以在 .npmrc 中指定:

//registry.npmjs.org/:_authToken=your-auth-token
//registry.npmjs.org/:_proxy=http://your-proxy-url:port

6. 环境变量方式

npm 也支持通过环境变量来设置代理,设置 HTTP_PROXYHTTPS_PROXY 环境变量:

Linux/macOS:

export HTTP_PROXY=http://your-proxy-url:port
export HTTPS_PROXY=http://your-proxy-url:port
npm install

Windows (命令提示符):

set HTTP_PROXY=http://your-proxy-url:port
set HTTPS_PROXY=http://your-proxy-url:port
npm install

Windows (PowerShell):

$env:HTTP_PROXY = "http://your-proxy-url:port"
$env:HTTPS_PROXY = "http://your-proxy-url:port"
npm install

7. 取消代理设置

如果你之前设置了代理,但现在不再需要(例如回到了不需要代理的网络环境),记得取消代理设置:

npm config delete proxy
npm config delete https-proxy

同时检查 ~/.npmrc 文件,删除相关代理配置项。

小贴士

  • 如果设置了代理后发现无法安装包,可能是代理配置有误,可以尝试取消代理后重新配置。
  • 某些公司内部网络可能还需要额外配置白名单或防火墙规则。
  • 使用 npm config list 命令可以查看所有当前的 npm 配置。

通过以上步骤,你应该能够成功配置 npm 的代理设置,顺利安装和管理依赖包。