Spring Boot 多个端口?
Posted
技术标签:
【中文标题】Spring Boot 多个端口?【英文标题】:Spring Boot Multiple Ports? 【发布时间】:2019-01-23 08:59:57 【问题描述】:如何让 Spring Boot Web 应用程序在多个端口上运行? 例如 8080 和 80 我怎样才能做到这一点?application.properties
server.port=8080, 80
【问题讨论】:
一个(spring boot)应用程序只监听一个端口。如果您想让 Spring Boot 应用程序监听 2 个端口,请使用 server.port=8080 启动 2 个端口,另一个在 server.port=80 上启动,即单独的 application.properties 文件。 在another thread讨论 【参考方案1】:您可以添加侦听器,而不是运行多个应用程序。例如,如果您使用 undertow :
@Configuration
public class PortConfig
@Value("$server.http.port")
private int httpPort;
@Bean
public UndertowEmbeddedServletContainerFactory embeddedServletContainerFactory()
UndertowEmbeddedServletContainerFactory factory = new UndertowEmbeddedServletContainerFactory();
factory.addBuilderCustomizers(new UndertowBuilderCustomizer()
@Override
public void customize(Undertow.Builder builder)
builder.addHttpListener(httpPort, "0.0.0.0");
);
return factory;
我用它来监听 http 端口和 https 端口。
对于 Tomcat,您会发现相同类型的配置: https://docs.spring.io/spring-boot/docs/1.2.1.RELEASE/api/org/springframework/boot/context/embedded/tomcat/TomcatEmbeddedServletContainerFactory.html
【讨论】:
这里讨论:***.com/questions/36357135/…以上是关于Spring Boot 多个端口?的主要内容,如果未能解决你的问题,请参考以下文章
如何在多个 HTTPS 端口上运行 Spring Boot HTTPS 服务器
如何在 STS/eclipse 的多个端口上启动单个 Spring Boot 微服务? [关闭]
nginx配置 多域名 spring boot项目(同台服务器多个端口)