Encontré este problema, principalmente porque la empresa ha desarrollado dos programas pequeños, la base de usuarios no es grande, como todos sabemos, el programa pequeño de WeChat solo se puede lanzar en https
El proxy inverso de Nginx implementa la implementación de dos pequeños programas en el mismo servidor
Listo para trabajar
- Instalar Nginx
- Instalar certificado ssl
Comience a configurar Nginx
El archivo de configuración nginx.conf comentó http, activó https y se estableció de la siguiente manera
#HTTPS server
server {
listen 443 ssl;
server_name www.xxx.com;
ssl_certificate 你的证书路径/XXXXX.pem;
ssl_certificate_key 你的证书路径/XXXXX..key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location /api1 {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8081/api1;
}
location /api2 {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8082/api2;
}
}
La configuración anterior es el efecto
- https://www.xxx.com/api1 reenviado a http://127.0.0.1:8081/api1
- https://www.xxx.com/api2 reenviado a http://127.0.0.1:8082/api2
Inicie su servicio de applet
Mi proyecto es springboot, de acuerdo con la configuración anterior, un puerto 8081, ruta raíz api1,
otro puerto 8082, ruta raíz api2, para que se implemente el mismo servidor de nombres de dominio y se implementen dos proyectos 443
Estoy aquí para resolver la ruta con el directorio, por supuesto, usando el proxy inverso nginx, también puede configurar dos nombres de dominio para resolver la ruta