Windows10下修改JFrog Artifactory OSS7.3.2默认端口遇404问题求助
我之前配置Artifactory OSS时也碰到过一模一样的情况——改了端口后服务启动正常,但UI访问就报404,改回默认端口8081就一切正常。结合你的操作步骤,给你几个实际有效的排查和解决思路:
1. 检查Artifactory内部的Base URL配置
这是最常见的问题根源:你改了Tomcat的端口,但Artifactory系统本身还在使用旧端口生成UI的访问路径。
找到Artifactory的系统配置文件 C:\jfrog-artifactory-oss-7.3.2-windows\artifactory-oss-7.3.2\var\etc\system.yaml,打开后定位到artifactory.server.baseUrl配置项,把端口改成8285,示例如下:
artifactory: server: baseUrl: http://localhost:8285/artifactory
保存后重启服务,这一步直接解决了我当时的问题。
2. 确认所有配置文件的端口都已同步更新
你已经修改了三个server.xml文件,但可能还有遗漏的配置点:
- 检查
C:\jfrog-artifactory-oss-7.3.2-windows\artifactory-oss-7.3.2\var\etc\artifactory\artifactory.config.xml,查找是否有<port>标签,比如<access><port>8081</port></access>或者<server><port>8081</port></server>,把这些端口也替换成8285 - 查看启动脚本
artifactory.bat,有没有硬编码的端口参数(比如-Dartifactory.port=8081),如果有,直接替换为8285
3. 清理缓存并重新启动服务
旧的缓存文件可能会导致路径解析异常,按以下步骤操作:
- 停止Artifactory服务(可以直接关闭控制台窗口,或者用
artifactory.bat stop命令) - 删除
C:\jfrog-artifactory-oss-7.3.2-windows\artifactory-oss-7.3.2\var\cache目录下的所有内容 - 重新运行
artifactory.bat启动服务,等待控制台日志显示服务完全初始化后,再尝试访问UI
4. 测试核心服务是否正常
如果UI还是报404,可以先验证Artifactory的核心服务是否正常:访问http://localhost:8285/artifactory/api/system/ping,如果返回OK,说明核心服务没问题,问题出在UI的路由或部署配置上。
这时候可以尝试删除UI的部署目录C:\jfrog-artifactory-oss-7.3.2-windows\artifactory-oss-7.3.2\app\artifactory\webapps\ui,然后重启服务——Artifactory会自动重建UI的webapp文件。
5. 检查访问日志的请求细节
虽然你说access日志没有报错,但可以仔细查看日志里的请求记录:比如当你访问/ui时,Tomcat收到的请求路径是什么?有没有出现302重定向到旧端口8081的记录?如果有的话,说明还有配置没改全,导致系统自动跳转到旧端口。
内容的提问来源于stack exchange,提问作者Mahesh

