https證書申請驗證


需求:項目原來時http://開始的訪問路徑,現有需求改為https開頭的訪問路徑

申請一個自己的域名

好多的雲服務提供商都可以提供域名申請和SSL證書申請

我是找了個免費的注冊網站(新網 http://www.xinnet.com/

SSL證書也有免費的

先說注冊域名

新網 http://www.xinnet.com/注冊的域名,新用戶搞活動時可以申請一個免費一年的域名,域名申請需要實名認證,我們測試使用申請一個根域名便宜的域名即可,比如xyz結尾的

 

 域名有了以后還需要在控制台添加域名解析才能用

 

根據官網的提示提交解析,新增域名解析時新增自己申請的域名和www.域名綁定IP地址即可

申請SSL證書

可以到這個https://letsencrypt.osfipin.com/網站申請SSL證書,有效期為3個月到期重新申請即可;也可以到https://freessl.cn/去申請我用的第一個網站申請的。

申請證書的方式有好多種,有付費的也有免費的,有命令式的也有圖形式,下面這個時最簡單的圖形操作,新手容易理解上手,缺點就是到期需要手動重新申請

申請的時候按照人家官網提示操作即可,過程中需要驗證域名的有效性,也是按照提示驗證就行,

這里我有個疑問就是人家提供的驗證方式有倆種,其中一種是需要在網站絕對路徑下新增文件夾並拷貝一個txt驗證文件進去,因為我不清楚網站的絕對路徑是啥,

就選擇了另外一種驗證方式,到期再次申請的時候還要驗證。

驗證倆次,驗證通過后就可以申請SSL證書了,並下載證書

 

 證書下載完成后,解壓壓縮文件,修改證書和密鑰的后綴,然后放在ngnix/config/的一個文件夾下面即可,放在其他地方ngnix啟動時找不到ssl證書

 

 

ngnix配置

默認的一下配置可以管它們,我這里配置了負載均衡的代理和ssl證書

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    upstream test{
        ip_hash;
        server 127.0.0.1:9001;
        server 127.0.0.1:9002;
    }
    server {
        listen       80;
        #監聽域名
        server_name  www.test97.xyz;
        rewrite ^(.*)$ https://$server_name$1 permanent; #這句是代表 把http的域名請求轉成https
        location / {
            proxy_pass  http://test;
            proxy_set_header Host $host;#將請求頭轉發給后端服務器
            proxy_set_header X-Forward-For $remote_addr;#后端的Web服務器可以通過X-Forwarded-For獲取用戶真實IP
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Server $host;
        
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    # HTTPS server
    server {
        listen 443 ssl;
        server_name  www.test97.xyz;
        ssl_certificate cert/fullchain.pem;
        ssl_certificate_key cert/private.key;
        ssl_protocols TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
        ssl_session_cache shared:SSL:10m;    
        ssl_session_timeout 10m;
        location / {
                proxy_pass http://test;
           }
    }

}

啟動ngnix或者重啟

start ngnix.exe 或者nginx.exe -s reload

把項目跑起來,在瀏覽器用https訪問一下試試

我的測試項目在自己電腦上運行,所以以上適用於windows使用,linux可以自己研究下,linux申請證書更容易直接使用命令,並且可以設置定時任務自己更新證書

測試時頁面引用http的請求可以暫時更改瀏覽器的安全設置來實現

 

JavaScript 頁面跳轉、頁面重定向

JavaScript 實現頁面跳轉重定向可以使用以下兩種方法:

window.location.replace("url")

類似 HTTP 重定向

將地址替換成新 url,該方法通過指定 URL 替換當前緩存在歷史里(客戶端)的項目,因此當使用 replace 方法之后,你不能通過"前進"和"后退"來訪問已經被替換的URL,這個特點對於做一些過渡頁面非常有用!

window.location.href="url"

類似點擊 a 標簽的鏈接

跳轉到指定的 url。


免責聲明!

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



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