这篇文章将为大家详细讲解有关springBoot中server.port=-1是什么意思,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
今天遇到这种新奇的写法,项目是可以正常启动的。
然而http的端口有范围:1~65535。-1是访问不了的
而且只要是负数,最终启动日志打印的都是
Tomcat started on port(s): -1 (http) with context path ''
那springBoot放开负一端口的含义是什么,直接到官方文档中找答案:
明确说明了,放开-1是为了:完全关闭HTTP端点,但仍创建一个WebApplicationContext
还发现了另外一个好玩的配置:server.port=0
含义是:
扫描可用端口(使用OS本机来防止冲突)
也就是说,配置了server.port=0,项目启动时会自动扫描可用端口,然后启动=w=
最近springboot项目为了安全启用了https,但是项目中还写了接口供其他程序调用,这个接口必须是http的。研究发现原来一个springboot项目是可以有一个http端口和一个https端口的。
配置文件如下:
#http port server.http.port=1234 #https port server.port=1233
项目启动的时候使用的是server.port端口。
配置的http端口要想使用需要写下面这样一个配置类:
import org.apache.catalina.connector.Connector; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; import org.springframework.boot.web.servlet.server.ServletWebServerFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class HttpsConfig { @Value("${server.http.port}") private Integer httpPort; @Bean public ServletWebServerFactory serverFactory() { TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory(); tomcat.addAdditionalTomcatConnectors(createStandardConnector()); return tomcat; } /** * 配置http * @return */ private Connector createStandardConnector() { Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol"); connector.setPort(httpPort); return connector; } }
之后写接口的时候便可以使用这个端口了。
关于“springBoot中server.port=-1是什么意思”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。