騰訊雲 網站開啟HTTPS
下圖是我站點的初始化樣子,可以看到只是輸出一個字符串,啥也沒有,並且沒有https。
這無所謂,因為我們的重點是https,而不是網站內容
接下來就是配置https的關鍵步驟了,其實只需要三步而已:
-
申請證書
-
修改Nginx的vhost配置文件
-
重啟Nginx
登錄騰訊雲->進入管理中心,出現下圖:
然後鼠標放到紅色框的地方,會出現下拉框,點擊上圖中箭頭指的位置->ssL證書管理,出現下圖:
如果您還沒有使用過,列表應該是空的,然後點擊上圖中紅色框中的申請證書按鈕,出現下圖:
我們可以直接使用默認的免費版證書,點擊上圖中確定按鈕,出現下圖:
在這個頁面,在通用名稱一欄輸入域名,在申請郵箱一欄輸入有限,其他可選,下圖以我的為例:
然後點擊下一步,會讓你驗證,直接選擇 自動DNS驗證
然後點擊上圖中確認申請,會彈框提示已提交,然後到列表中就能看到類似的下圖:
在這個列表中,狀態一列,我這裏顯示的已頒發,實際上這裏應該是審核中,因為我這個域名之前已經申請過了,所以你們操作完回到這一步,顯示的是審核中,然後騰訊審核的效率還是挺快的,幾分鐘後就頒發下來了。
證書頒發下來之後,然後點擊下載,把這個證書下載下來,下載下來是個壓縮包,解壓之後,打開目錄,出現下圖:
上圖中內置了四種服務環境,選擇自己對應的服務環境,如果沒有您的環境,可聯系騰訊雲,我這裏是Nginx:
然後把上圖中這兩個文件上傳到服務器的Nginx配置文件目錄,我個人是上傳到/usr/local/nginx/conf
上傳完了之後,就開始配置域名對應的vhost文件了,完整配置如下:
下面是上圖中完整的核心代碼
server { listen 80; server_name test.sailengsi.com;#換成你的域名 return 301 https://$server_name$request_uri; } server { listen443; server_name test.sailengsi.com;#換成你的域名 ssl on; ssl_certificate ssl/test/1_test.sailengsi.com_bundle.crt;#證書文件 ssl_certificate_key ssl/test/2_test.sailengsi.com.key;#秘鑰文件 ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; }
解釋一下,第二個server,大家肯定能明白,這是官方給的實例,具體可參考文末給的鏈接。
第一個server,是為了把80端口給重定向到443,也就是把http的訪問重定向到https,不然,直接訪問https是沒問題,但是用戶訪問時,可能就直接輸入域名啥的,這個時候默認走的是80端口,所以我們通過這一步直接重定向,就做到了全站https。
ssl配置中有個註意的地方:
ssl_certificate
和ssl_certificate_key
,後面的引入的路徑,要麽是絕對路徑,從/
開始,要麽就像我這樣,要麽直接在當前目錄下開始找,不要寫./
或者../
啥的,Nginx不支持這種路徑,會報錯,會報錯,會報錯!!!
配置完成之後,重啟以下命令重啟Nginx:
/usr/local/nginx/sbin/nginx -s reload
然後,再次刷新頁面,就會發現,直接變成https,成功的界面如下圖
騰訊雲 網站開啟HTTPS