首先,SpringBoot和Nginx只需要任意一个部署SSL即可。
参考文档: cloud.tencent.com/document/pr…
这里讲下配置Nginx:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
client_max_body_size 10m;
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
# gzip config
gzip on;
gzip_min_length 1k;
gzip_comp_level 9;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary on;
gzip_disable "MSIE [1-6]\.";
# 将http转到https
server {
listen 80;
server_name 你的域名; #填写绑定证书的域名
rewrite ^ https://$http_host$request_uri? permanent;
}
# HTTPS server
#
server {
listen 443 ssl;
server_name 你的域名;
ssl_certificate /usr/local/nginx/cert/bundle.crt;
ssl_certificate_key /usr/local/nginx/cert/com.key;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.html?s=$1 last;
break;
}
}
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080/blog/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
访问地址:
https://你的域名/prod-api/blogpc/
http://你的域名/prod-api/blogpc/
微信小程序访问需要https,也需要经过nginx进行转发。