溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springBoot中server.port=-1是什么意思

發(fā)布時間:2021-08-17 09:17:05 來源:億速云 閱讀:632 作者:小新 欄目:開發(fā)技術

這篇文章將為大家詳細講解有關springBoot中server.port=-1是什么意思,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

springBoot server.port=-1的含義

今天遇到這種新奇的寫法,項目是可以正常啟動的。

springBoot中server.port=-1是什么意思

然而http的端口有范圍:1~65535。-1是訪問不了的

而且只要是負數(shù),最終啟動日志打印的都是

Tomcat started on port(s): -1 (http) with context path ''

那springBoot放開負一端口的含義是什么,直接到官方文檔中找答案:

明確說明了,放開-1是為了:完全關閉HTTP端點,但仍創(chuàng)建一個WebApplicationContext

還發(fā)現(xiàn)了另外一個好玩的配置:server.port=0

含義是:

掃描可用端口(使用OS本機來防止沖突)

也就是說,配置了server.port=0,項目啟動時會自動掃描可用端口,然后啟動=w=

Springboot的server.port和server.http.port

需求

最近springboot項目為了安全啟用了https,但是項目中還寫了接口供其他程序調用,這個接口必須是http的。研究發(fā)現(xiàn)原來一個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是什么意思”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI