HTTP 状态 404 – 未找到错误,在 artifactory 版本 7.69.11 的 https 上运行,但它在 http 端口 8082 中工作正常

HTTP Status 404 – Not Found error ,while running on https on artifactory version 7.69.11 but it is working fine in http port 8082

提问人:KVR 提问时间:9/16/2023 更新时间:9/26/2023 访问量:98

问:

我正在使用在 tomcat 上运行 artifactory 的 artifactory 社区版,artifactory 版本是 7.63.11

首先,当我点击 url http://myhost:8081/artifactory 时,它会重定向到 http://myhost:8082/ui/ 并显示登录页面(在 http 上工作)

我正在尝试为这个工件配置为 https,当我点击 url https ://myhost:8443/artifactory 时,页面正在加载,页面加载时图像工件正在启动,它重定向到 https://myhost:8443/ui/ 并显示错误“HTTP 状态 404 – 未找到”,我看到 certifacte 看起来不错,catalina 中没有错误.log

日志不显示任何内容

这是我使用的 system.yaml

共享: extraJavaOpts:-Xmx4g -Xss256k 数据库: 类型: 德比 驱动程序:org.apache.derby.jdbc.EmbeddedDriver 网址:jdbc:derby:/opt/app/artifactory-oss-7.63.11/var/data/artifactory/derby;创建=真 人工制品: 端口:8081 雄猫: 连接器: 最大线程数:200 sendReasonPhrase:真 relaxedPathChars: '“[]”' relaxedQueryChars: '“[]”' https连接器: 已启用:true 端口:8443 certificateFile: “/opt/artifactory-oss-7.63.11/var/etc/artifactory/security/ssl/server.crt” certificateKey文件: “/opt/artifactory-oss-7.63.11/var/etc/artifactory/security/ssl/server.key” extraConfig: 'SSLProtocol=“TLSv1.2”' 访问: 网址: 端口:8040 雄猫: 连接器: 最大线程数:50 sendReasonPhrase:真

当我停止并重新启动 artifactory 时,它说 artifactory system.yaml 文件成功,然后它会在 https 8443 上加载页面,重定向到 8443/ui,就像我上面提到的

我需要一个解决方案,它应该在带有端口 8443 的 https 上运行并显示登录页面

Apache HTTP HTTPS Artifactory

评论


答:

0赞 AngelloMaggio 9/16/2023 #1

虽然 Artifactory 版本 6x 及更低版本仅在 Tomcat 上运行并使用 8081 进行外部通信,但该产品的 7.x 版本同时使用端口 8081 和端口 8082。有关此处使用的端口的更多信息

端口 8082 处理 UI 并重定向到其他产品,因此它能够处理 /ui/ 上下文路径。

目前,您可以为 Artifactory 和 Access 微服务设置 https 连接器,以便安全地进行内部通信。但是,对于端口 8082 和整体最终用户访问,实现此目的的方法是反向代理,例如 Nginx。文档在这里

如果使用反向代理来处理 SSL 和重定向流量,则必须使所有请求都转到端口 8082,除非路径以“/artifactory”开头,在这种情况下,必须使用端口 8081。端口 8082 也可以处理“/artifactory”请求,但在高并发性下会受到端口 8081 不会的性能影响。

评论

0赞 KVR 9/18/2023
我们没有 Nginx ,在 6.23 中我们通过 server.xml 进行了封存,您能帮助我们配置 nginx for https 的步骤吗
0赞 KVR 9/18/2023
问题是:在未找到路由到 8543/UI 页面后运行 8443/artifactory,需要帮助和步骤来配置它
0赞 AngelloMaggio 9/20/2023
在此版本中,您将需要 HTTP 的反向代理
0赞 KVR 10/25/2023
它修复了对不起,回复晚了,谢谢@AngelloMaggio
0赞 David Livshin 9/24/2023 #2

连接器端口 8443 仅用于直接与 Artifactory (/artifactory) 微服务通信。

所有外部 UI 流量都来自路由器端口 8082。在平台上启用 TLS 后,此端口现在应该受到保护。

请您去 https://myhost:8082(确保它是 HTTPS)并让我们知道它是否按预期显示 UI。

这与 6.x 版本不同。