最近在寫一個小程序,因為小程序官網上必須要使用https,之前網站都是使用的http,而且使用的阿里云服務,于是就在阿里云上購買的ssl服務,以下是配置過程。
1.首先是去阿里云上購買ssl,當然有免費版,但是只能支持一個域名,而且同一個域名只能購買20個證書,各個明細子域名都算一個域名
2.購買ssl證書之后去證書控制臺,這個時候需要補全資料,補全之后等待審核,一般只需幾分鐘就能審核通過。
3.審核之后就需要去下載證書
4.然后需要去所在服務器上配置key和pem,當然我們這里選擇的是自動生成key,如果有必要可以自己去制作key,按照阿里云上的步驟操作就是了。如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
server { listen 443; server_name localhost; ssl on; root html; index index.html index.htm; ssl_certificate cert /21 .pem; ssl_certificate_key cert /21 .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 / { root html; index index.html index.htm; } } |
這時候不要忙著去重啟nginx,首要要去查看nginx是否增加ssl模塊,如果沒有,需要重新編譯,先執行sudo apt-get install openssl libssl-dev安裝ssl,然后進入nginx目錄執行如下語句:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi \ --add-module=/home/scp/fastdfs-nginx-module/src \ --with-http_stub_status_module \ --with-http_ssl_module |
執行完語句后執行make 然后 make install,這個時候如果重啟nginx后,外網可能還是無法訪問,因為阿里云端口需要我們自己配置,需要先去安全組添加對443端口的過濾,我這里是ubuntu系統,同時要在終端執行ufw allow 443,這時去訪問調用即可。然后需要將80端口訪問跳轉到443
1
2
3
4
5
|
到此這篇關于使用nginx方式實現http轉換為https的示例代碼的文章就介紹到這了,更多相關nginx http轉換為https內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://blog.csdn.net/u013305783/article/details/81839595