首页主机资讯Ubuntu Tomcat遇到404错误怎么解决

Ubuntu Tomcat遇到404错误怎么解决

时间2026-01-22 07:16:06发布访客分类主机资讯浏览690
导读:Ubuntu 上 Tomcat 出现 404 的排查与修复 一 快速自检 确认服务已运行:sudo systemctl status tomcat9;如未运行,执行 sudo systemctl start tomcat9。 核对访问地址...

Ubuntu 上 Tomcat 出现 404 的排查与修复

一 快速自检

  • 确认服务已运行:sudo systemctl status tomcat9;如未运行,执行 sudo systemctl start tomcat9。
  • 核对访问地址与端口:默认是 http://localhost:8080;如使用 apt 安装,配置文件在 /etc/tomcat9/,部署目录为 /var/lib/tomcat9/webapps/
  • 查看实时日志,优先关注 catalina.out:tail -f /var/log/tomcat9/catalina.out。
  • 检查端口是否被占用:ss -tlnp | grep :8080 或 netstat -tlnp | grep :8080。
  • 若部署了应用,确认 webapps/ROOT/ 存在且包含默认首页(如 index.html/index.jsp),或使用正确上下文路径访问:http://localhost:8080/yourapp。

二 常见原因与对应修复

  • 应用未部署或上下文路径错误:将 WAR 放到 /var/lib/tomcat9/webapps/ 会自动解压;访问 http://localhost:8080/应用名/。如需根路径访问,部署到 ROOT(重命名 WAR 为 ROOT.war 或解压到 ROOT 目录)。
  • server.xml 配置异常:检查 /etc/tomcat9/server.xml 中 是否被占用或改动;如需改端口,修改后重启:sudo systemctl restart tomcat9。
  • 欢迎页或静态资源缺失:确认 webapps/ROOT/ 目录及内容完整(不少 404 是因为 ROOT 为空或被误删)。
  • 权限问题:确保 Tomcat 运行用户(如 tomcat 或 www-data)对 webapps/、logs/ 及解压后的应用目录有读取权限;必要时执行 chown/chmod 修正。
  • 反向代理配置不当:若使用 Nginx/Apache,核对代理目标、端口与路径前缀是否一致,避免把请求代理到错误上下文。
  • URL 大小写或路径拼写错误:Linux 路径区分大小写,确认 /** 与 /index.jsp 等路径无误。

三 日志定位与关键线索

  • 先看 catalina.outlocalhost.< 日期> .log:定位是“应用未部署成功”“资源不存在”还是“过滤器/Servlet 映射不匹配”。
  • 若日志提示 JAVA_HOME 未正确设置 或指向 JRE 而非 JDK,需在 /etc/default/tomcat9 中设置 JAVA_HOME 为 JDK 路径(如 /usr/lib/jvm/java-11-openjdk-amd64),然后重启。
  • 若看到 ClassNotFound/NoClassDefFoundError 且伴随权限拒绝,检查 JDK/JRE 库目录的读取权限(例如对 jre/lib 下的 JAR 补上读权限:sudo chmod a+r -R jre/)。
  • 若日志显示应用启动成功但访问仍 404,多半是 应用未部署到正确上下文默认欢迎页缺失

四 针对不同安装方式的要点

  • 使用 apt 安装(如 tomcat9):配置集中在 /etc/tomcat9/;部署目录 /var/lib/tomcat9/webapps/;日志 /var/log/tomcat9/;管理界面 /manager/html 需在 /etc/tomcat9/tomcat-users.xml 配置用户与角色后访问。
  • 手动安装(解压版):确认 CATALINA_HOME/CATALINA_BASEJAVA_HOME 正确;部署到 webapps/ROOT/ 或自定义目录;必要时在 conf/server.xml 配置 ;日志位于 logs/
  • 使用 IDE(如 Eclipse)集成 Tomcat:如遇到启动后访问 8080 仍 404,可尝试在 Servers 视图中移除已部署项目、清理配置并重新添加与启动,以恢复正常部署流程。

五 一条最小化验证流程

  • 部署测试页:echo “

    OK

    ” | sudo tee /var/lib/tomcat9/webapps/ROOT/index.html
  • 重启服务:sudo systemctl restart tomcat9
  • 本地验证:curl -I http://localhost:8080/(应返回 HTTP/1.1 200
  • 远程验证:在浏览器访问服务器 IP:8080;若仍 404,检查云服务器安全组/防火墙是否放行 8080,并复核上面步骤。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Tomcat遇到404错误怎么解决
本文地址: https://pptw.com/jishu/789705.html
Debian系统如何配置Golang网络 Linux FTPServer如何实现多用户管理

游客 回复需填写必要信息