Após o Springboot 2.0, a maneira de ativar o protocolo HTTPS é um pouco diferente de quando 1.*, então poste o código.
Meu código é capaz de determinar se deve ativar o protocolo HTTPS com base na condição.http2https nos parâmetros de configuração. Se o protocolo HTTPS estiver ativado, todos os acessos ao protocolo HTTPS serão transferidos automaticamente para o protocolo HTTPS.
1. Inicie o programa
pacote com.wallimn.iteye.sp.asset; importar org.apache.catalina.context; importar org.apache.catalina.connector.connector; importar org.apache.tomcat.util.descriptor.web.securitycollection; importar org.apache.tomcat.util.descriptor.web.securityconstraint; importar org.springframework.beans.factory.annotation.value; importar org.springframework.boot.springApplication; importar org.springframework.boot.autoconfigure.springbootApplication; importar org.springframework.boot.autoconfigure.condition.conditionalonProperty; importar org.springframework.boot.web.embedded.tomcat.tomcatservletwebServerFactory; importar org.springframework.context.annotation.bean; /** * Springboot2.0 Starter * @author Wallimn, http://wallimn.iteye.com * */@springbootapplication public class AssetApplication {public static void main (string [] args) {springApplication.run (astApplication.class, args); } // Se o valor padrão não for usado 80 @Value ("$ {http.port: 80}") inteiro httpport; // A porta HTTPS normalmente habilitada é como 443 @Value ("$ {server.port}") inteiro httpsport; // Modelo de redação do SpringBoot2 @Bean @conditionalOnProperty (name = "condition.http2https", tendovalue = "true", matchifmissing = false) TomCatServletLeBServerververFactory servLeTContainer () {TomCatsWerBSERVERVERVERVERVERVERVERSTRETCATCATSAER () {) PostprocessContext (Contexto do contexto) {SecurityConstraint Restrint = new SecurityConstraint (); restrint.setUserConstrain ("Confidencial"); Coleção SecurityCollection = new SecurityCollection (); coleção.addpattern ("/*"); restrint.addcollection (coleção); context.AddConstrain (restrição); }}; tomcat.addadditionaltomcatconnectors (httpConnector ()); retornar Tomcat; } @Bean @ConditionalOnProperty(name="condition.http2https", havingValue="true", matchIfMissing=false) public Connector httpConnector() { System.out.println("Enable http to https protocol, http port: "+this.httpPort+", https port: "+this.httpsport); Conector conector = novo conector ("org.apache.coyote.http11.http11nioprotocol"); conector.setscheme ("http"); // o número da porta HTTP ouvido por Connector.SetPort (httpport); conector.SetSecure (false); // o número da porta HTTPS que você recorre depois de ouvir o número da porta de https conectado.setRedirectport (httpsport); retornar conector; }}2. Arquivo de configuração
1. Configuração ao usar o protocolo HTTP
server.port = 80
2. Configuração ao usar protocolos HTTPS e HTTP
server.port = 443 server.ssl.key-store = Classpath: keystore.p12 server.ssl.key-store-sassword = your-password server.sssl.keystoretype = pkcs12 server.ssl.keyalias = sua cert-alias.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.