HTTPS的相关配置

1、全链路的加密,需要配置Nginx+产品均配置为https;
2、仅用户端,用户通过https访问到Nginx,Nginx代理后端的http服务

1、在springboot框架应用内配置

编辑修改application.yaml

server:
  port: 5200
# SSL证书配置开始,以下内容默认不存在,需要自行添加
# 证书文件放置到应用根目录下
# 添加注意yaml格式中的对齐规则:ssl与port对齐

# 如果是JKS证书,按照以下配置
  ssl:
    enabled: true
    redirect-http: true                #http请求的重定向
    key-store: xxxxxxxx.com.jks        #证书文件名
    key-store-password: xxxxxxxxx      #证书密码
    key-store-type: JKS
# 如果是pfx证书,按照以下配置
  ssl:
    enabled: true
    redirect-http: true                #http请求的重定向
    key-store: xxxxxxxx.com.pfx        #证书文件名
    key-store-password: xxxxxxxxx      #证书密码
    key-store-type: PKCS12
# SSL证书配置结束
…………

2、Nginx中配置

使用默认端口的情况

upstream decnginx {
    ip_hash;  #负载算法
    #请按照实际项目上的地址和端口填写
    server 10.10.82.71:8080 weight=1;
    server 10.10.82.72:8080 weight=1;
} 
server {
      #监听80端口非https请求,重定向到https;解决部分浏览器不自动跳转的问题
      listen 80;
      server_name decnginx;
      return 301 https://$http_host$request_uri;
  
}
server {
        #监听默认的SSL443端口设置
        listen 443 ssl;
        server_name decnginx;
        #将对应的pem证书和key文件放置到自定义的目录下,并指定好文件路径
        ssl_certificate  /usr/local/nginx/xxxxxxxxxxx.com.pem;
        ssl_certificate_key  /usr/local/nginx/xxxxxxxxxxx.com.key;

        # 如果是是win环境下运行的nginx,路径要符合win的规范,可参照如下调整
        # ssl_certificate  D://nginx/xxxxxxxxxxx.com.pem;
        # ssl_certificate_key  D://nginx/xxxxxxxxxxx.com.key;

        location / {
            proxy_pass  http://decnginx;
            proxy_http_version 1.1;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            #add_headerCache-Control no-store;            
        }
。。。。。。

不使用默认端口的情况

server {
    #设置监听端口,此模式下不需要再配置80端口监听
    listen 8443 ssl;
    #设置server
    server_name decnginx;
    #将对应的pem证书和key文件放置到自定义的目录下,并指定好文件路径
    ssl_certificate  /usr/local/nginx/xxxxxxxxxxx.com.pem;
    ssl_certificate_key  /usr/local/nginx/xxxxxxxxxxx.com.key;

    # 如果是是win环境下运行的nginx,路径要符合win的规范,可参照如下调整
    # ssl_certificate  D://nginx/xxxxxxxxxxx.com.pem;
    # ssl_certificate_key  D://nginx/xxxxxxxxxxx.com.key;
   
    #利用497代码重定向,支持http自动跳转https
    error_page 497 https://$host:$server_port$request_uri;
        
    location / {
            proxy_pass  http://decnginx;
            proxy_http_version 1.1;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            #add_headerCache-Control no-store;
        }
。。。。。。
posted @   进城民工  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示