Prefacio
Algo sucedió recientemente, que interrumpió mi ritmo original. El 28 de enero de 2021, este día es un día doloroso. Vale la pena recordar este día, pero la vida tiene que continuar. El código por escribir todavía necesita escribirse, y el pequeño El programa debe estar escrito. Vaya en línea, el desarrollo básicamente está llegando a su fin, ¡comience a preparar el camino para conectarse en línea del mini programa! Antes sabía que HTTPS es necesario para que el mini programa se conecte a Internet y no tuve tiempo de hacer esto cuando escribí el código. ¡No te conectes a Internet para hacerlo!
¡Este es el pájaro! Si desea agregar HTTPS aquí, debe ser la adición del servidor http back-end. Nuestro back-end usa el framework Ruoyi basado en SpringBoot II. Para decirlo sin rodeos, ¡el back-end de Noy se puede cambiar! ¡Hazlo bien!
Solicitud de certificado de prostitución blanca Aliyun
1. Solicite un certificado SSL que no requiera dinero.
Hay 20 después de obtener el paquete de recursos, lo que significa que puede solicitar 20 certificados
¡Simplemente complete la información básica y verifíquela! El tiempo de revisión es de 1 a 15 minutos, ¡generalmente en 3 minutos!
2. Descarga de certificado.
Aquí está el servidor back-end más el protocolo HTTPS, y SpringBoot es ejecutado por el contenedor Tomcat, así que seleccione Tomcat aquí.
El siguiente archivo es la contraseña
Configuración de SpringBoot Protocolo HTTPS
1. Copie el archivo .prx del certificado en el directorio de recursos.
2. Escriba el archivo de configuración yml.
http:
port: 8081
server:
port: 443
ssl:
key-store: classpath:xxxxxxxx.com.pfx
key-store-password: xxxxxx
keyStoreType: PKCS12
3. La interceptación de la configuración de la clase de inicio principal
@Bean
public ServletWebServerFactory servletContainer() {
TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory() {
@Override
protected void postProcessContext(Context context) {
SecurityConstraint securityConstraint = new SecurityConstraint();
securityConstraint.setUserConstraint("CONFIDENTIAL");
SecurityCollection collection = new SecurityCollection();
collection.addPattern("/*");
securityConstraint.addCollection(collection);
context.addConstraint(securityConstraint);
}
};
tomcat.addAdditionalTomcatConnectors(redirectConnector());
return tomcat;
}
private Connector redirectConnector() {
Connector connector = new Connector(TomcatServletWebServerFactory.DEFAULT_PROTOCOL);
connector.setScheme("http");
connector.setPort(80);
connector.setSecure(false);
connector.setRedirectPort(443);
return connector;
}
4. ¡Implemente el servidor para ejecutar la prueba y
hacerla!
Lo anterior es mi situación ideal, este es solo un proyecto SpringBoot puro, y luego probé esta operación en el backend de Ruoyi, ¡no funcionará! Luego busqué la forma de Ruoyi de configurar HTTPS, lo cual es problemático. Luego pienso en Nginx en este momento y configuro Nginx como un proxy inverso. ¡No me asusto al configurar esto!
Nginx configura el servidor http proxy inverso HTTPS
1. La solicitud del certificado
sigue siendo la misma que en el primer paso anterior
2. Descarga del certificado
Aquí seleccionamos el certificado Nginx para descargar
3.
Antes de configurar Nginx para HTTPS , escribí un artículo sobre la configuración de Https de Nginx. No repetiré la rueda aquí. Nginx configure el nombre de dominio + certificado SSL para generar HTTPS
4. Configure el servidor http del proxy inverso.
Circled es el servidor http del proxy inverso
5. ¡Reinicie la prueba de acceso de Nginx y
hágalo!