
本文详解因代理配置不当或网络设置异常导致 `npx create-nx-workspace` 命令无法访问 npm 官方仓库(registry.npmjs.org)的典型错误,并提供可立即生效的代理清理与 registry 配置方案。
在企业内网或受控网络环境中执行 npx create-nx-workspace ng-mfe 创建 Nx 微前端工作区时,常遇到如下报错:
npm ERR! code ENOTFOUND npm ERR! network request to http://registry.npmjs.org/create-nx-workspace failed, reason: getaddrinfo ENOTFOUND iaccess.ril.com
该错误明确指向网络解析失败——npm 尝试连接的并非 registry.npmjs.org,而是类似 iaccess.ril.com 的内部域名,说明本地 npm 配置被错误地指向了公司代理网关,且该网关本身无法正确转发至公网 npm 仓库。
✅ 正确排查与修复步骤
1. 查看当前 npm 配置
运行以下命令检查是否误设了 proxy/https-proxy:
npm config list
重点关注输出中是否包含:
立即学习“前端免费学习笔记(深入)”;
proxy = "http://Sowdjk.eioqepi:***@8080" https-proxy = "http://Sowdjk.eioqepi:***@8080" registry = "http://registry.npmjs.org/"
⚠️ 注意:
- 使用 http:// 协议访问 registry 已不被推荐(npm v7+ 默认要求 HTTPS);
- 若 proxy 值为不可达或已废弃的内部地址(如 iaccess.ril.com),将直接导致 DNS 解析失败。
2. 彻底清除代理配置(推荐首选)
执行以下命令删除所有代理相关设置:
npm config delete proxy npm config delete https-proxy npm config delete strict-ssl # 如曾设为 false,一并清除以避免证书问题
3. 显式设置安全 registry 地址
确保 registry 使用 HTTPS 协议:
npm config set registry https://registry.npmjs.org/
✅ 验证是否生效: npm config get registry # 应输出 https://registry.npmjs.org/
4. 临时绕过代理(可选)
若需保留全局代理但仅对 npm 操作禁用,可添加环境变量:
# Windows PowerShell $env:NODE_OPTIONS="--no-proxy" # 或 Linux/macOS export NODE_OPTIONS="--no-proxy"
再运行 npx create-nx-workspace ng-mfe。
? 补充说明
- 不要手动修改 hosts 文件或强制绑定内部域名:这会掩盖真实网络策略问题;
- 避免混用 HTTP/HTTPS registry:http://registry.npmjs.org/ 在新版 npm 中可能触发 403 或重定向失败;
- 企业用户建议联系 IT 部门确认代理白名单:确保 registry.npmjs.org 和 github.com(Nx CLI 依赖 GitHub 模板)已放行。
完成上述配置后,重新执行初始化命令即可正常拉取 Nx 脚手架:
npx create-nx-workspace@latest ng-mfe
如仍失败,请检查系统 DNS 设置(如 nslookup registry.npmjs.org 是否返回有效 IP),或尝试切换至移动热点等直连网络进一步验证是否为纯网络策略限制。









