Sonatype Nexus3(CE 3.79)代理后Base-URL不生效,如何修改?
Nexus3 代理后复制按钮URL显示错误的解决方法
1. 修正Nginx代理头部配置
Nexus需要通过Nginx传递的头部识别外部访问地址,在Nginx的代理location块中添加以下配置:
proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port;
添加后重载Nginx配置(nginx -s reload)。
2. 配置Nexus的Base URL能力
- 登录Nexus后台,点击右上角齿轮图标进入系统设置
- 选择「Capabilities」(能力),点击右上角「Create capability」
- 选择「Base URL」类型,在「Base URL」字段填入
https://nginx-proxy.com后保存 - 若之前创建过同名能力,先删除旧配置再重新创建
3. 修改Nexus核心配置文件(可选,若上述步骤无效)
找到Nexus安装目录下的 etc/nexus-default.properties 文件,修改 nexus-args 参数,添加Base URL的JVM参数:
# 修改前示例 # nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml # 修改后 nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml,-Dnexus.baseUrl=https://nginx-proxy.com
修改完成后重启Nexus服务。
4. 验证结果
清除浏览器缓存后重新访问Nexus,进入目标仓库页面点击复制按钮,检查URL是否已更新为 https://nginx-proxy.com/repository/my-repo。
内容的提问来源于stack exchange,提问作者Sergey Botsman
相关产品推荐
相关产品推荐

