天天看點

如何讓你的網站也能跟我的一樣使用HTTPS通路?

使用HTTPS通路我們的網站,不僅可以增加我們網站的安全性,更重要的是還能提升我們網站的逼格!我在為網站搭建SSL服務和CDN上有一些經驗,在這裡分享給大家,希望能幫到在這方面有需求的小夥伴吧!!!

第一步 購買SSL證書

打開

阿裡雲

>

産品與服務

SSL證書

第二步 驗證域名

購買成功後,需要驗證我們域名,是以我們需要解析域名

  • 記錄類型:

    TXT

  • 主機記錄:

    hub

    .fengwenyi.com
  • 記錄值:

    将表格中的記錄值填寫到這裡

點選

儲存

然後在驗證域名那裡點選

驗證

第三步 下載下傳證書

雖然域名驗證通過,但是我們申請的證書還需要一段時間的稽核。

這時候我們需要去下載下傳證書。

第三步 配置

這裡需要說明的是,我們是使用Nginx哦

是以,我們将下載下傳的證書上傳到伺服器

.../nginx/config/cert

目錄下

然後我們去配置

Nginx

  • listen 443 ssl; #SSL協定通路端口号為443。此處如未添加ssl,可能會造成Nginx無法啟動。
  • server_name hub.fengwenyi.com; # 域名,用于代替将要通路的端口号
  • ssl_certificate cert/hub.fengwenyi.com.pem; #将domain name.pem替換成您證書的檔案名。
  • ssl_certificate_key cert/hub.fengwenyi.com.key; #将domain name.key替換成您證書的密鑰檔案名。
  • ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。
  • ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用該協定進行配置。

然後,我們将通路80端口的時候,也跳轉到這裡

  • rewrite ^(.*)$ https://$host$1 permanent; #将所有http請求通過rewrite重定向到https。

Nginx完整配置如下:

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
         listen 80;
         server_name hub.fengwenyi.com;   #将localhost修改為您證書綁定的域名,例如:www.example.com。
        rewrite ^(.*)$ https://$host$1 permanent;   #将所有http請求通過rewrite重定向到https。
         location / {
            proxy_pass http://localhost:5000/;
        }
    }

    server {
        listen 443 ssl;   #SSL協定通路端口号為443。此處如未添加ssl,可能會造成Nginx無法啟動。
        server_name hub.fengwenyi.com;   # 域名,用于代替将要通路的端口号
        ssl_certificate cert/hub.fengwenyi.com.pem;   #将domain name.pem替換成您證書的檔案名。
        ssl_certificate_key cert/hub.fengwenyi.com.key;   #将domain name.key替換成您證書的密鑰檔案名。
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #使用此加密套件。
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;   #使用該協定進行配置。
        ssl_prefer_server_ciphers on; 
        
        location / {
            proxy_pass http://localhost:5000/;
        }
    }
}           

重新開機 Nginx

./nginx -s reload           

預覽

等這些操作完,SSL證書差不多稽核完成了。

話不多我們直接通路一下吧!

https://hub.fengwenyi.com

個人網站

https://www.fengwenyi.com

繼續閱讀