溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何使用nginx實現(xiàn)將http轉(zhuǎn)換為https

發(fā)布時間:2020-11-04 17:00:46 來源:億速云 閱讀:826 作者:Leah 欄目:開發(fā)技術(shù)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何使用nginx實現(xiàn)將http轉(zhuǎn)換為https,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

最近在寫一個小程序,因為小程序官網(wǎng)上必須要使用https,之前網(wǎng)站都是使用的http,而且使用的阿里云服務(wù),于是就在阿里云上購買的ssl服務(wù),以下是配置過程。

.首先是去阿里云上購買ssl,當(dāng)然有免費版,但是只能支持一個域名,而且同一個域名只能購買20個證書,各個明細(xì)子域名都算一個域名

如何使用nginx實現(xiàn)將http轉(zhuǎn)換為https

2.購買ssl證書之后去證書控制臺,這個時候需要補全資料,補全之后等待審核,一般只需幾分鐘就能審核通過。

如何使用nginx實現(xiàn)將http轉(zhuǎn)換為https

3.審核之后就需要去下載證書

如何使用nginx實現(xiàn)將http轉(zhuǎn)換為https

4.然后需要去所在服務(wù)器上配置key和pem,當(dāng)然我們這里選擇的是自動生成key,如果有必要可以自己去制作key,按照阿里云上的步驟操作就是了。如下所示:

 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模塊,如果沒有,需要重新編譯,先執(zhí)行sudo apt-get install openssl libssl-dev安裝ssl,然后進(jìn)入nginx目錄執(zhí)行如下語句:

./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 

   執(zhí)行完語句后執(zhí)行make 然后 make install,這個時候如果重啟nginx后,外網(wǎng)可能還是無法訪問,因為阿里云端口需要我們自己配置,需要先去安全組添加對443端口的過濾,我這里是ubuntu系統(tǒng),同時要在終端執(zhí)行ufw allow 443,這時去訪問調(diào)用即可。然后需要將80端口訪問跳轉(zhuǎn)到443

server {
listen 80;
server_name www.域名.com;
rewrite ^(.*) https://$server_name$1 permanent;
}

上述就是小編為大家分享的如何使用nginx實現(xiàn)將http轉(zhuǎn)換為https了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI