Ubuntu下Verdaccio多域名/IP访问UI不显示已发布包求助
解决Verdaccio多域名/IP访问Web UI不显示已发布包的问题
问题根源
Verdaccio Web UI会依赖配置文件中的固定url参数,或首次访问时将当前域名存入浏览器本地存储,后续切换域名/IP访问时,UI仍会请求旧的registry地址,导致无法加载包列表。
解决步骤
修改Verdaccio配置文件
找到你的Verdaccio配置文件(默认路径为~/.config/verdaccio/config.yaml),添加或修改url配置项为相对路径:url: '/'该设置会让UI自动适配当前访问的域名/IP作为registry请求地址,而非硬编码固定域名。
清除浏览器本地存储
之前访问过的浏览器会在localStorage中留存旧的registry地址,需手动清除:- 打开浏览器开发者工具(F12)
- 切换到
Application(Chrome)或Storage(Firefox)标签页 - 找到
Local Storage,删除对应域名下的verdaccio-registry-url条目
重启Verdaccio服务
执行命令让配置生效:verdaccio restart # 若用systemd管理服务,执行: sudo systemctl restart verdaccio反向代理补充配置(若使用)
确保反向代理(如Nginx)传递正确的请求头,让Verdaccio识别当前访问域名。以Nginx为例,在代理配置中添加:proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme;
验证
完成上述操作后,分别用不同域名别名和IP访问Web UI,所有入口均应正常显示已发布包,且UI中的registry地址会自动匹配当前访问URL。
内容的提问来源于stack exchange,提问作者Anjs
相关产品推荐
相关产品推荐

