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

Windows服务模式Wildfly部署Spring项目单独配置端口方法

核心逻辑说明

Wildfly作为独立Java EE应用服务器,所有部署的应用默认共享服务器侧配置的HTTP监听端口,应用本身没有权限直接修改容器的监听端口,因此SpringBoot配置文件里的server.port参数仅在使用内嵌容器启动时生效,部署到外部Wildfly时该配置默认无效。
要实现单应用独立使用8093端口、不修改全局默认8080端口配置的需求,不管是standalone直接运行还是注册为Windows服务运行(Windows服务本质是调用Wildfly本地安装目录的配置启动,配置逻辑和standalone模式完全一致),可采用以下两种方案:


方案1:Wildfly原生多端口监听配置(推荐)

该方案通过新增独立的socket绑定、HTTP监听器、虚拟主机,实现单端口与单应用的绑定,不影响原有8080端口的所有部署应用。
操作步骤:

  • 停止运行Wildfly的Windows服务,打开Wildfly安装目录下standalone/configuration/路径中服务启动使用的配置文件(默认是standalone.xml,如果启动时指定了ha等其他配置则对应修改对应xml文件)。
  • 找到<socket-binding-group>配置节点,在原有端口绑定配置旁新增8093端口的独立绑定,不要修改原有8080端口的配置:
<socket-binding name="http-8093" port="8093"/>
  • 找到Undertow Web容器的子系统配置节点(节点标识为<subsystem xmlns="urn:jboss:domain:undertow:*">),在<server name="default-server">节点下新增绑定8093端口的HTTP监听器,指定默认虚拟主机:
<http-listener name="http-8093-listener" socket-binding="http-8093" default-host="host-8093" redirect-socket="https" enable-http2="true"/>
  • 还是在Undertow子系统配置内,新增对应8093端口的独立虚拟主机配置:
<host name="host-8093" default-web-module="${project.artifactId}" alias="localhost,127.0.0.1">
    <filter-ref name="server-header"/>
    <filter-ref name="x-powered-by-header"/>
</host>

注意:default-web-module的值需要和你pom.xml里配置的finalName保持一致,也就是你的WAR包不带后缀的名称。

  • 修改项目中src/main/webapp/WEB-INF/jboss-web.xml配置,新增虚拟主机绑定规则:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="
      http://www.jboss.com/xml/ns/javaee
      http://www.jboss.org/j2ee/schema/jboss-web_5_1.xsd">
    <context-root>/</context-root>
    <virtual-host>host-8093</virtual-host>
</jboss-web>
  • 重新打包项目生成WAR包,部署到Wildfly后启动Windows服务,即可通过http://127.0.0.1:8093/swagger-ui.html访问目标应用,原有8080端口的服务完全不受影响。

方案2:改用SpringBoot内嵌容器部署

如果不想修改Wildfly的全局配置,可以直接将SpringBoot项目打包为带内嵌Web容器(Tomcat/Undertow均可)的可执行JAR包,单独将这个JAR包注册为Windows服务运行。
这种模式下你之前在application.properties中配置的server.port=8093会直接生效,不需要依赖Wildfly容器,端口配置逻辑和你之前使用Tomcat的体验完全一致。


内容的提问来源于stack exchange,提问作者Felipe La Rotta

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 16:03:32