用阿里云的免费SSL 证书让网站从HTTP换成HTTPS
參考鏈接:https://ninghao.net/blog/4449
簡介:HTTP協議是不加密傳輸數據的,也就是用戶跟你的網站之間傳遞數據有可能被再途中被截獲,破解傳遞的展示內容,所以使用不加密的HTTP網站是不×××全的。所以Google的Chrome瀏覽器再2017年1月開始,標記使用不加密的HTTP協議的網站為Not Secure,不安全
現在你要做的就是讓網站支持HTTPS,并不難,而且現在可以免費做到。要使用HTTPS,你需要安全機構頒發的安全證書,然后配置服務器,去使用這個證書。下面介紹一下在阿里云申請安全證書,還有配置一般NGINX服務器支持HTTPS的方法
????申請證書
1. 登錄:阿里云控制臺-》左邊的 云盾(安全)-》證書服務,購買證書。
2. 購買:證書類型選擇 免費型 DV SSL,然后完成購買。
3. 不全:在 我的證書 控制臺,找到購買的證書,在操作欄里面選擇 補全。填寫證書相關信息
4. ?域名驗證:可以選擇DNS,如果域名用了阿里云的 DNS 服務,在勾選一下,證書綁定的域名在 阿里云的云解析
5. ?上傳:系統生成 CSR ,點一下創建
6. ?提交審核
如果一切正常,10分鐘左右,申請的證書就會審核通過。
申請證書要注意的是驗證域名,就是你要驗證你想綁定證書的域名是你自己的,如果選擇使用DNS 驗證,你需要在域名的管理里,添加一條特定的DNS記錄,這樣就可以證明這個域名是你自己的。使用了阿里云的云解析服務,這個步驟可以自動完成,會自動為你添加一條DNS 驗證的記錄
輸入證書要綁定的域名:
填寫個人信息:
在域名的管理里,因為我用了阿里云的 DNS 解析服務,所以會自動添加一個 TXT 記錄,這個記錄就是驗證域名所有權用的:
????下載證書
在阿里云的證書管理哪里 ,如果申請的證書審核通過了,你就可以下載了,點擊 下載,可以選擇不同的類型,可以選擇 NGINX ,或者Apache 之類的服務器。根據自己網站的web 服務器類型,下載對應的證書。解壓以后,你就會得到兩個文件 一個是 *.key,一個是*.pem。
????配置 NGINX 的 HTTPS
有了這個證書,就可以去配置 Web 服務器去使用這個證書了,不同的 Web服務器配置方式都不太一樣。下面用NGINX 服務器作為延時。我的域名是:www.xujingcong.com?,出現這個文字的地方你可以根據自己的實際情況去替換一下。
????下載并上傳證書
在nginx的安裝目錄下創建一個存儲證書的目錄 cert :
把申請并下載來的證書,上傳到上面的目錄下面。我的證書位置是:
????配置NGINX文件
你的網站可以同時支持HTTP 與 HTTPS, HTTPS 默認的端口是 80,HTTPS 的默認端口是443。也就是如果你的網站要使用HTTPS,你需要配置網站服務器,讓它監聽443端口,也就是用戶使用 HTTPS 發出的請求。
打開nginx的安裝目錄下的 conf 目錄中的 nginx.conf 文件,找到:
將其修改為(以下屬性中的sll開頭的屬性與證書配置有直接關系,其他暗屬性請結合自己的實際情況復制或調整):
復制下面代碼:
server {
? ? listen 443;?
? ? server_name localhost;
? ? ssl on;
? ? root html;
? ? index index.html index.htm;
? ? ssl_certificate ? /usr/local/nginx/conf/cert/214183774790839.pem;
? ? ssl on;
? ? root html;
? ? index index.html index.htm;
? ? ssl_certificate ? /usr/local/nginx/conf/cert/214183774790839.pem; ?#可以使用絕對路徑
? ? ssl_certificate_key ?/usr/local/nginx/conf/cert/214183774790839.key; ?#可以使用絕對路徑
? ? access_log ?logs/ssl.access.log;
? ? 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 / {
? ? ? ? root html; ?# 放置程序的目錄?
? ? ? ? index ?index.html index.htm;
????????#proxy_pass ? http://127.0.0.1:8080/ssl;??#可以使用反向代替跳轉到后端的8080端口
? ? ? ? }
? ?}
保存退出。
上面的配置里,ssl_certificate 與 ssl_certificate_key 這兩個指令指定使用了兩個文件,就是你下載的證書,解壓之后看到的那兩個文件,一個是 *.pem ,一個是 *.key 。你要把這兩個文件上傳到服務器上的某個目錄下面。
重新加載 NGINX 服務
????驗證配置
在瀏覽器上輸入帶 https 的網站地址 :https://www.xujingcong.xin
如果正確的配置了服務器使用 SSL 證書,會在地址欄上顯示一個綠色的鎖頭圖標。
配置成功后,啟動nginx出現問題:
配置文件nginx.conf中ssl無法識別 ,請確認是否在編譯nginx過程中加入--with-http_ssl_module 這個模塊。
轉載于:https://blog.51cto.com/vickyzhang/1944824
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的用阿里云的免费SSL 证书让网站从HTTP换成HTTPS的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 青岛西海岸新区将建大数据交易中心
- 下一篇: Django:视图和URL配置