過程總述 1. 購買伺服器,購買功能變數名稱,備案 2. 申請ssl證書 3. DNS驗證 4. 上傳證書,配置nginx 5. 很關鍵,打開埠!!!阿裡雲的443埠預設是不打開的 1.購買伺服器,功能變數名稱,備案 伺服器我是買的阿裡雲的,功能變數名稱也是在阿裡雲上買的,註意一點,現在功能變數名稱必須備案才能用,所以建議先買 ...
過程總述
- 購買伺服器,購買功能變數名稱,備案
- 申請ssl證書
- DNS驗證
- 上傳證書,配置nginx
- 很關鍵,打開埠!!!阿裡雲的443埠預設是不打開的
1.購買伺服器,功能變數名稱,備案
伺服器我是買的阿裡雲的,功能變數名稱也是在阿裡雲上買的,註意一點,現在功能變數名稱必須備案才能用,所以建議先買功能變數名稱著手備案,等備好案再買伺服器。
粘個阿裡雲推廣的連接,點進去有新人紅包
https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ppef3go2
如果是個人開發使用,伺服器不用買太貴的,1M網速2G記憶體的就夠用了。
功能變數名稱如果不是商用,也不用太好,我就用的.top,cn和com基本沒多少好聽的功能變數名稱了。而且還很貴。
2.申請ssl證書
https://freessl.cn/
申請Let's Encrypt的ssl證書
比如我們現在要給example.top申請證書
- 註冊個帳號,不註冊也行,但是註冊了之後,以後證書如果不小心刪了,這裡還可以在下載。郵箱註冊,打開郵件驗證,然後回到首頁。
- 在首頁輸入你要的輸入的功能變數名稱,如果你要只用二級功能變數名稱比如www.example.top,就輸這個二級功能變數名稱就行,或者你要全功能變數名稱,就輸入*.example.top,這樣以後所有二級功能變數名稱就都可以用https服務了。我們這裡使用全功能變數名稱。
- 點擊創建,確認。然後會給一個私鑰的壓縮包,留下來,先不用。然後界面上進入DNS驗證的過程。
3. DNS驗證
- 首先說說這個東西是幹嘛的,我理解的,就是給你發的時候,我得確認你有這個網站的許可權,然後能讓我認可,我才給你發證,表示我承認這個證保護這個網站。
- 先不要點擊驗證,如果失敗會有十分鐘的間隔之後才能再驗證,點擊
配置完成,檢測一下
進入檢測界面。檢測界面這樣,但是數據不全,先不用點,還要用剛纔那個界面的數據。
- 打開你的阿裡雲網站,進入控制台->功能變數名稱->點擊你的功能變數名稱->然後功能變數名稱解析。到這個界面就對了。
- 添加dns驗證要的信息。點擊添加記錄,在最開始的freessl的那個頁面,就是查詢驗證之前的那個界面。
- 一共有兩個,新建兩個記錄,對應關係一樣,如圖。
- 測試一下,應該通過,然後回到freessl那裡,點擊
點擊驗證
,通過之後會發給你一個壓縮包,裡邊就是證書啦。
4. 上傳證書,配置nginx
- 剛纔獲得的最後的證書在那個壓縮包里,解壓是這樣的內容,如果丟了,可以去網站再下載一下(如果剛纔沒有註冊登陸,就只能再重新申請一遍)。
- scp複製到伺服器上,或者搭建了ftp服務也可以。(不會的自行百度啦,scp還是很簡單的)。比如我的吧
scp private.key [email protected]:/root/
,然後要求輸入密碼,文件就過去了。把兩個文件都傳過去。 - 進入伺服器。把剛纔的兩個文件複製到nginx下新建的一個目錄下,我的放在
/usr/local/nginx/cert/
下了。 - 貼上我的nginx配置文件。
server {
listen 443;
ssl on;
ssl_certificate /usr/local/nginx/cert/full_chain.pem;
ssl_certificate_key /usr/local/nginx/cert/private.key;
keepalive_timeout 70;
server_name example.top;
root /data/webroot/example;
charset utf-8;
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;
fastcgi_param HTTPS on;
fastcgi_param HTTP_SCHEME https;
location / {
index index.php index.html index.htm;
if (-e $request_filename) {
break;
}
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
location ~ .+\.php($|/) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
access_log logs/calendar.yimeidan.access.log;
error_log logs/calendar.yimeidan.error.log;
}
server {
listen 80;
server_name calendar.yimeidan.top;
return 301 https://$server_name$request_uri;
}
5. 一定要記得打開埠!!!
最後的最後,很關鍵,打開埠!!!打開埠!!!打開埠!!!
阿裡雲的443埠預設是不打開的,需要如下操作打開埠。(80埠也是需要這麼打開的。)
點開你的阿裡雲控制台,找到你要用的伺服器,然後點更多->網路和安全組->安全組配置。
點配置規則,添加安全組規則。添加內容如圖。你也可以這樣配好80埠。
尾聲
理論上完活啦,有問題可以留言交流。
成品截圖:
寫文不易,如果覺得幫到您了,可以支持下。d=====( ̄▽ ̄*)b。
阿裡雲新人紅包:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ppef3go2
阿裡雲產品開年活動:https://www.aliyun.com/acts/product-section-2019/new-users?userCode=ppef3go2
阿裡雲商標註冊服務:https://tm.aliyun.com/?userCode=ppef3go2