nginx配置SSL,https反向代理至http(vue,springBoot)

nginx配置SSL使得站点升级为HTTPS

  • 思路
  • nginx.conf文件

思路

前端页面到nginx是HTTPS请求,nginx反向代理到后端的HTTP接口;

这样就不用修改Java代码,只要nginx配置ssl证书即可,省事(主要是懒~)

nginx.conf文件

server {
   listen 80;   
   listen 443 ssl;

    # 这里是主页 也就是你的域名
    server_name ***********************;
    ssl on;
    #  证书存放地址
    ssl_certificate ****************.cer;
    ssl_certificate_key ************************.key;

    ssl_prefer_server_ciphers on;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

    ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
    keepalive_timeout 70;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security max-age=63072000;
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;
    
    #前端vue的dis文件夹处
    root *******;
    # 跟上面配套的
    index index.html;
    
    // 重定向到API接口
    location /api {
        proxy_set_header  X-Real-IP   $remote_addr;
        # api_server是自己定义的upstream
        proxy_pass http://api_server;
    }
    #因为vue使用了history模式,加入防止因路由问题,导致项目子页面刷新404错误
    #拦截没有进入dis目录下的路由,使其重新指向对应目录
    location / {
    	try_files $uri /index.html;
    }
  }

你可能感兴趣的:(Linux,spring,boot)