阿里雲https+nginx服務搭建

購買證書

  • 經過控制檯進入CA證書服務,點擊右上角的購買證書,進入以下圖的界面,選擇免費的SymantecDV SSL

購買https證書

  • 一路點過去,而後回到證書服務主頁,會出現一條訂單信息,點擊補全,以下圖所示。

證書信息補全

  • 而後按照要求,首先填寫你要申請證書的完整域名(例如www.test.com,由於此證書爲單域名,不能使用通配符);而後填寫我的信息,值得注意的是須要勾選下圖紅圈包圍的選項,讓驗證自動化進行,不用手動操做;而後下一步,完成信息補全,等待幾分鐘,驗證就能夠經過。

我的信息

添加443端口(https)安全組規則

  • 等待的這個時間,你能夠去檢查一下你的服務器的安全組配置,看一下是否加入了443端口的連接,防止後面鏈接不上。建立的新規則以下圖。

添加https安全組

下載證書

  • 幾分鐘後,能夠看到下圖的狀態。

完成證書籤發

  • 接着點擊下載,進入下圖的界面,並點擊下載證書for Nginx

下載證書

配置Nginx服務器

  • 把這個文件解壓後,會有兩個文件,分別爲***.pem***.key(能夠修改爲你須要的名字),將這兩個文件拷貝到你的Nginx根目錄下的cert文件夾內(本身建立的,也能夠命名成其餘名字)。html

  • 接下來就要配置Nginx服務器了。nginx

若是你配置了反向代理,就去conf.d目錄下,修改你要配置https的default.conf文件。下面貼一個範例配置。其中端口80爲http連接,設置爲重定向https;端口443爲https連接。git

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
upstream blog {
server 127.0.0.1:8080;
}
 
server {
listen 80;
server_name www.test.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name www.test.com;
 
ssl on;
index index.html;
ssl_certificate /etc/nginx/cert/***.pem;
ssl_certificate_key /etc/nginx/cert/***.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_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
expires off;
sendfile off;
proxy_pass http://test;
}
}
  • 配置完之後運行nginx -s reload從新加載配置,去瀏覽器輸入連接,此時成功進入https連接✌️。

原文鏈接:https://www.jianshu.com/p/e3d945fa82b4github

相關文章
相關標籤/搜索