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

部署myServices服务后访问出现404错误,请求技术支持

排查myServices部署后404问题的实用步骤

我之前也碰到过类似的部署后404坑,给你梳理几个从基础到进阶的排查方向:

  • 确认Web容器的上下文根映射
    从你提到的webapps\myServices路径来看,应该是用Tomcat这类Servlet容器吧?默认情况下webapps下的子目录会自动作为上下文根,但如果手动修改过server.xml里的Host节点配置,要检查是否添加了Context标签:

    <Context docBase="/path/to/webapps/myServices" path="/myServices" reloadable="true"/>
    

    重点确认docBase指向的是正确的目录,path属性和你访问的/myServices完全匹配,别出现大小写或者路径拼写错误。

  • 检查文件与目录的权限
    远程服务器上的webapps/myServices目录和test.html文件,必须让容器的运行用户(比如Tomcat的tomcat用户)拥有读取权限。可以用命令查看:

    ls -l webapps/myServices/test.html
    

    如果权限不足,执行以下命令调整:

    chmod 755 webapps/myServices
    chmod 644 webapps/myServices/test.html
    
  • 验证应用是否真的部署成功
    去容器的日志目录(比如Tomcat的logs/catalina.out)搜索myServices,找类似这样的成功日志:

    Deployment of web application directory [/opt/tomcat/webapps/myServices] has finished in [234] ms
    如果日志里有部署失败的报错(比如依赖缺失、web.xml语法错误),那应用根本没启动,自然访问404。

  • 排查端口与防火墙限制
    虽然你确认了端口正确,但还要检查:

    • 服务器本地防火墙是否开放了目标端口,比如CentOS用firewall-cmd --list-ports,Ubuntu用ufw status查看;
    • 如果是云服务器,务必检查云平台的安全组规则,是否允许外部访问该端口。有时候端口监听正常,但防火墙拦截了请求,也会返回404(部分客户端会把连接失败伪装成404)。
  • 先验证容器本身的可用性
    先访问http://serverIp:port/,看看容器的默认欢迎页能不能打开。如果能打开,说明容器运行正常,问题集中在myServices的部署上;如果也打不开,那可能容器本身没启动,或者端口配置有误。

  • 检查静态资源的拦截规则
    如果你的myServices里有自定义的web.xml,看看有没有配置拦截所有请求的Servlet或过滤器(比如<url-pattern>/*</url-pattern>),这类规则会把静态资源的请求也拦截掉。如果有,需要添加静态资源的放行配置,比如在Spring Boot里用resources标签,或者在传统Web应用里配置默认的静态资源映射。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:22:45