我如何让一个Spring Boot网页应用程序在多个端口上运行?
例如:8080和80
我该如何实现这一目标?
application.properties
我该如何实现这一目标?
application.properties
server.port=8080, 80
server.port=8080, 80
与其运行多个应用程序,您可以添加监听器。例如,如果您使用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;
}
}
您可以使用以下命令运行它:
mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=8080
mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=8081
只需更改端口号并在另一个终端上运行即可。同时,您可以运行同一Spring Boot应用程序的多个实例。
现在,一个Spring Boot应用程序在2个端口上运行,一个在8080上,另一个在8081上。