You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JFrog Artifactory升级后URL配置问题:恢复旧HTTPS端口访问求助

Artifactory 6.x升级7.x后恢复旧URL访问配置方案

升级JFrog Artifactory从6.23.42到7.68.11后,原6.x版本使用的https://artifactory.com:8543/artifactory URL无法访问,现有10个应用团队的部署流程依赖该旧URL,当前仅能通过https://artifactory.com/ui访问,需配置回旧URL兼容。以下是具体解决步骤:

1. 调整Artifactory system.yaml配置,匹配6.x上下文路径

7.x版本默认上下文路径为/,而6.x为/artifactory,需在system.yaml中显式配置上下文路径,同时修正配置中的转义字符问题:

shared:
    extraJavaOpts: -Xmx4g -Xss256k
    database:
        type: derby
        driver: org.apache.derby.jdbc.EmbeddedDriver
        url: jdbc:derby:/opt/app/artifactory-oss-7.68.11/var/data/artifactory/derby;create=true
artifactory:
    port: 8081
    contextPath: /artifactory  # 新增:匹配6.x的上下文路径
    tomcat:
        connector:
            maxThreads: 200
            sendReasonPhrase: true
            relaxedPathChars: '"[]"'
            relaxedQueryChars: '"[]"'
        httpsConnector:
            enabled: true
            port: 8543
            certificateFile: "/opt/app/artifactory-oss-7.68.11/var/etc/artifactory/security/ssl/server.crt"
            certificateKeyFile: "/opt/app/artifactory-oss-7.68.11/var/etc/artifactory/security/ssl/server.key"
            extraConfig: 'SSLProtocol="TLSv1.2"'
access:
    http:
        port: 8040
    tomcat:
        connector:
            maxThreads: 50
            sendReasonPhrase: true

2. 修改Apache反向代理配置,兼容旧URL路径

调整Apache的虚拟主机配置,添加旧URL路径的代理规则,同时修正UI路径的代理逻辑:

Listen 443 https

<VirtualHost _default_:443>
    ServerName artifactory.com
    ErrorLog logs/ssl_error_log
    TransferLog logs/ssl_access_log
    LogLevel warn

    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    BrowserMatch "MSIE [2-5]" \
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0

    CustomLog logs/ssl_request_log \
              "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

    ProxyRequests off
    SSLProxyEngine on
    ProxyPreserveHost on
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerExpire off
    SSLProxyCheckPeerName off
    SSLProxyVerify none
    SSLVerifyClient none

    # 代理旧URL路径到Artifactory内部端口
    ProxyPass /artifactory http://artifactory.com:8081/artifactory
    ProxyPassReverse /artifactory http://artifactory.com:8081/artifactory

    # 保留UI路径的代理,兼容新访问方式
    ProxyPass /ui http://artifactory.com:8082/ui
    ProxyPassReverse /ui http://artifactory.com:8082/ui
</VirtualHost>

关键调整点:

  • 修正ServerName为完整域名artifactory.com,确保域名匹配正确
  • 添加/artifactory路径的代理规则,对应Artifactory的内部HTTP端口8081
  • 修正UI路径的ProxyPassReverse,补充端口号保持路径一致性

3. 移除6.x版本的server.xml配置

7.x版本不再使用server.xml管理Tomcat配置,所有Tomcat相关参数已整合到system.yaml中,沿用旧的server.xml会导致配置冲突,需删除或重命名该文件,避免Artifactory启动时加载错误配置。

4. 重启服务生效

  1. 重启Artifactory服务,让system.yaml的配置生效
  2. 重启Apache服务,让反向代理配置生效

验证

  • 访问https://artifactory.com:8543/artifactory,应正常加载Artifactory仓库及API接口,兼容应用团队的旧部署流程
  • 访问https://artifactory.com/ui,应正常加载7.x版本的UI界面,不影响新访问方式

内容的提问来源于stack exchange,提问作者KVR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 02:14:54