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

将Spring Boot Freemarker应用部署至cPanel Tomcat服务器遇阻求助

问题分析与解决方案

核心问题点

  • Context配置冲突:你在server.xml里配置了path=""的Context,指向/home/user/public_html,这会把该目录设为Tomcat的ROOT应用(默认上下文)。而你的platform.war部署后会以/platform作为上下文路径,两者会导致请求路由混乱。
  • 拼写错误:server.xml里的autoDeploay是拼写错误,正确应为autoDeploy,这个错误会导致Tomcat自动部署功能失效。
  • 手动创建同名文件夹:你手动创建了与WAR包同名的platform文件夹,Tomcat部署时会优先选择已存在的目录而非解压WAR包,可能导致部署的内容不是你最新的WAR包内容。

修正步骤

1. 修复server.xml配置

修改server.xml中的Host配置,删除多余的Context节点,同时修正拼写错误:

<Host name="user.host" appBase="/home/user/public_html" unpackWARs="true"
deployXML="true" autoDeploy="true">
<Alias>www.user.host</Alias>
<Alias>user.host</Alias>
<!-- 移除原有的path=""的Context节点 -->
</Host>

说明:appBase已经设置为public_html,Tomcat会自动把该目录下的WAR包部署为对应上下文的应用,无需额外配置Context。

2. 清理冗余文件

  • 删除public_html下手动创建的platform文件夹
  • 确保platform.war是你要部署的最新版本

3. 调整访问路径配置(可选)

如果希望通过域名根路径访问你的应用(而非user.host/platform),可以把WAR包重命名为ROOT.war;如果保留platform.war,则访问路径应为http://user.host/platform。.htaccess配置保持现有内容即可:

SetHandler jakarta-servlet
SetEnv JK_WORKER_NAME ajp13

4. 重启Tomcat

保存所有配置修改后,重启Tomcat服务,让配置生效。

验证部署

查看Tomcat日志,确认部署成功:

  • 日志中应显示Deployment of web application archive [/home/user/public_html/xxx.war] has finished的成功信息
  • 访问对应路径(根路径或/platform),检查是否能正常加载Spring Boot Freemarker页面

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 03:45:35