Nginx配置HTTPS並將HTTP請求重定向到HTTPS



個人博客 地址:https://www.wenhaofan.com/a/20190702214652

在阿里雲獲取免費的HTTPS證書

    配置HTTPS之前首先需要擁有HTTPS證書,在阿里雲可以獲得域名免費的一年HTTPS證書

    訪問 https://common-buy.aliyun.com/?commodityCode=cas#/buy 選擇免費型DV SSL購買即可

    如果你的域名是其他服務商提供的也可以在百度搜索:你的域名服務商+免費HTTPS證書,即可找到對應教程

對外開放443端口

        使用HTTPS需要服務端開放443端口,請檢查服務器的安全組是否開放443端口,以及檢查服務器系統防火牆是否開放443端口,如果未開放的話HTTPS鏈接將不能正常訪問。

配置HTTPS訪問

server {
    ssl on;
    listen  443;
    server_name www.wenhaofan.com;
    client_max_body_size 1g;
    ssl_certificate   /www/ssh.pem
    ssl_certificate_key  /www/ssh.key;
 
  	
    location /  {
        proxy_set_header Host $http_host;
        proxy_pass   http://127.0.0.1:8080;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
 
        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;
    }
}

將上述配置文件中的server_name修改為你的HTTPS證書對應的域名,如果這里的server_name和你的HTTPS證書頒發的域名不一致是不能正常訪問的。

將ssl_sertificate修改為下載的SSL證書中以.pem結尾的文件存放路徑

將ssl_sertificate_key修改為下載的SSL證書中以.key結尾的文件存放路徑

將proxy_pass修改為你需要代理的后台服務訪問url

配置HTTP請求轉發至HTTPS

server {  
    listen 80;  
    server_name www.wenhaofan.com;  
      
    rewrite ^(.*)$  https://$host$1 permanent;  
}

將server_name修改為需要轉發至HTTPS的域名 例如:現在訪問 http://test.wenhaofan.com/ 轉發至https://test.wenhaofan.com,就將server_name修改為test.wenhaofan.com 即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM