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

如何在Linux环境Azure App Service中隐藏Tomcat服务器信息

Azure App Service Linux 环境隐藏 Tomcat 服务器信息解决方案

配置失败原因说明

Azure App Service Linux 环境的 Tomcat 以容器化方式运行,默认优先加载容器内部自带的 Tomcat 依赖包,手动上传到 /home/tomcat/lib 的自定义包优先级低于容器内置包,所以配置无法生效。

可用操作方案

方案1:调整类加载优先级使自定义配置生效

  • 登录 Azure 门户进入对应 App Service 控制台,依次打开「配置」→「应用程序设置」,添加如下配置项:
    键:CATALINA_OPTS
    值:-Djava.class.path=/home/tomcat/lib/catalina.jar:$CATALINA_HOME/lib/catalina.jar
    保存配置后等待应用自动重启。
  • 确认修改的 catalina.jar 配置正确:
    解压jar包后找到 org/apache/catalina/util/ServerInfo.properties,修改对应参数:
    server.info=Unknown
    server.number=0.0.0.0
    server.built=Unknown
    
    重新打包后上传到 /home/tomcat/lib 目录即可。

方案2:用 App Service 内置规则直接抹除Server头(操作更简单,无需修改Tomcat包)

直接在 App Service 的「配置」→「应用程序设置」中添加如下配置项:

  • 键:WEBSITE_HTTPHEADERS_REMOVE_SERVER
  • 值:1
    保存重启后,Azure 网关会自动删除所有响应中的 Server 头,不需要修改 Tomcat 本身配置,适配容器化部署环境。

验证方法

配置生效后,用curl命令测试响应头确认效果:
curl -I 你的应用访问域名
查看返回结果中是否还有Tomcat相关的Server信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 07:00:05