Nginx 域名SSL證書配置(網(wǎng)站 http 升級(jí)為 https)
前言
HTTP 和 HTTPS
我們?nèi)粘I钪?,常見的網(wǎng)址大致分為2種:
一種是基于 http 協(xié)議,如:http://www.baidu.com
一種是基于 https 協(xié)議,如:https://www.baidu.com
現(xiàn)在很多網(wǎng)站出于安全的考慮,會(huì)把網(wǎng)站的域名訪問(wèn)從 http 已經(jīng)升級(jí)為 https,如果你不知道 http 和 https 的概念,不妨先看看下面這篇文章:HTTP和HTTPS有什么不同
SSL 證書
那么我們?nèi)绾螌?http 升級(jí)為 https 呢?
我們要升級(jí) http 為 https,首先需要一個(gè) SSL 證書。 SSL 你可以想象為本科畢業(yè)證,有個(gè)這個(gè)本科畢業(yè)證,就能證明你是本科生,就都能去申請(qǐng)本科生門檻的招聘。當(dāng)然,證書可以由不同院校頒發(fā),比如清華本科畢業(yè)證和普通三本院校的本科畢業(yè)證,這兩者的含金量肯定是有不同的。SSL證書也一樣,也有不同發(fā)簽發(fā)機(jī)構(gòu)。
配置方式
當(dāng)有了域名和SSL證書后,我們就可以將域名網(wǎng)址升級(jí)為 https 了,我們常用的做法是在 Nginx 中配置域名的 SSL 證書。
具體過(guò)程
開始訪問(wèn)
(1)下面我以自己的網(wǎng)站,配置我的個(gè)人網(wǎng)站 SSL 證書,將我的網(wǎng)站升級(jí)為SSL。
我訪問(wèn)自己網(wǎng)站下的一張圖片( http://www.zyqok.cn/fj.jpg ),這是一個(gè) http 訪問(wèn)。
(2)然后我們改為 https 訪問(wèn),發(fā)現(xiàn)是訪問(wèn)不了的。
下面我們正式開始,將網(wǎng)站改為 https 的請(qǐng)求訪問(wèn)。
服務(wù)器安裝Nginx
首先,我們需要在服務(wù)器上安裝 Nginx 環(huán)境,如果你服務(wù)器已經(jīng)有Nginx了,那么這一步可以跳過(guò),如果未安裝Nginx,不妨參照
獲取 SSL 證書
由于我服務(wù)器是阿里云買的,所以阿里會(huì)送幾個(gè)免費(fèi)的SSL證書,下面以阿里云的獲取 SSL 證書過(guò)程進(jìn)行說(shuō)明。
如果你不是阿里云客戶,那么這一步可以跳過(guò),然后自行百度 “SSL證書” 到相關(guān)廠商購(gòu)買,或者百度 “免費(fèi)SSL證書” 。
(1)登錄阿里云,然后找到 【SSL證書】一欄,點(diǎn)擊( 因?yàn)槲乙呀?jīng)開通過(guò)了該功能,所以你的位置可能和我的位置不一樣,自己去面板找 )。
(2)來(lái)到這個(gè)面板后,點(diǎn)擊【購(gòu)買證書】。
(3)選擇免費(fèi)型,然后購(gòu)買
(4)當(dāng)你完成購(gòu)買后,就會(huì)在頁(yè)面出現(xiàn)一條對(duì)應(yīng)記錄,然后點(diǎn)擊【證書申請(qǐng)】。
(5)然后寫好你需要升級(jí)的域名,比如我要把我的個(gè)人網(wǎng)站 http://www.zyqok.cn 升級(jí)為 https://www.zyqok.cn
那么此時(shí)的域名就填 zyqok.cn,然后填寫好其他信息,點(diǎn)擊下一步,然后這個(gè)證書就會(huì)向上面提交,進(jìn)入審核狀態(tài)。
(6)當(dāng)你的申請(qǐng)通過(guò)之后,你就可以下載你的SSL證書了,我們點(diǎn)擊右下角【下載】
(7)繼續(xù)選擇 Nginx 后面的【下載】
(8)下載完成后,我們就可以得到一個(gè)SSL證書的壓縮包
上傳SSL證書到服務(wù)器
(1)我們先將證書壓縮包解壓,然后可以得到如下兩個(gè)文件。
(2)我們將這兩個(gè)文件通過(guò) FTP 工具,上傳到服務(wù)器上,并放在 Nginx 配置文件所在的同級(jí)目錄下。
修改配置并重啟
(1)打開你的 Nginx.conf 配置文件,然后將你的443和80端口的 server 信息配置如下:
更多詳細(xì)步驟可以查看阿里云的文檔:Nginx/Tengine服務(wù)器安裝SSL證書
# 直接訪問(wèn) https server { charset utf8; listen 443; root /opt/local; server_name www.zyqok.cn; ssl on; ssl_certificate 3067072_zyqok.cn.pem; ssl_certificate_key 3067072_zyqok.cn.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; } # http 跳轉(zhuǎn) https server { listen 80; server_name zyqok.cn; rewrite ^/(.*) https://www.zyqok.cn permanent; }
(2)注意藍(lán)色方框的內(nèi)容是你的域名和 SSL 證書相關(guān)文件。
(3)然后重啟你的 Nginx 服務(wù)
進(jìn)入nginx 的 sbin 目錄下,輸入下面命令,重啟 nginx 服務(wù)
./nginx -s reload
(4)如果是阿里云的服務(wù)器,別忘了開放 80 端口和 443 端口,不然訪問(wèn)不了
不會(huì)配置的可以參考這篇文章:阿里云安全規(guī)則配置
再次訪問(wèn)
(1)直接 https 進(jìn)行訪問(wèn)(443端口),可以看到是OK的
(2)然后 http 訪問(wèn)(80端口),他會(huì)自動(dòng)跳轉(zhuǎn)到 https,也是OK的。
至此,你已經(jīng)學(xué)會(huì)了 SSL 證書配置!謝謝閱讀!
- nginx配置SSL證書實(shí)現(xiàn)https服務(wù)的方法
- Nginx配置SSL證書出錯(cuò)解決方案
- Nginx下SSL證書安裝部署步驟介紹
- Nginx使用自簽ssl證書實(shí)現(xiàn)https連接的方法
- Nginx部署SSL證書的過(guò)程
- Nginx配置ssl證書(https)的全過(guò)程
- 阿里云ssl證書如何通過(guò)Nginx部署到服務(wù)器
- 關(guān)于Nginx配置ssl證書實(shí)現(xiàn)https安全訪問(wèn)
- Nginx實(shí)現(xiàn)自簽名SSL證書生成與配置實(shí)現(xiàn)
- Nginx配置SSL證書的方法步驟
- Nginx配置SSL證書的實(shí)現(xiàn)步驟
相關(guān)文章
利用Nginx處理Vue開發(fā)環(huán)境的跨域的方法
這篇文章主要介紹了利用Nginx處理Vue開發(fā)環(huán)境的跨域的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-06-06Nginx反向代理proxy_cache_path directive is not allowed錯(cuò)誤解決方法
這篇文章主要介紹了Nginx反向代理proxy_cache_path directive is not allowed錯(cuò)誤解決方法,需要的朋友可以參考下2015-04-04Nginx中定義404頁(yè)面并且返回404狀態(tài)碼的正確方法
這篇文章主要介紹了Nginx中定義404頁(yè)面并且返回404狀態(tài)碼的正確方法,本文在一次AJAX調(diào)用時(shí)發(fā)現(xiàn)了這個(gè)問(wèn)題,服務(wù)器返回了一個(gè)404頁(yè)頁(yè)但沒(méi)有返回404狀態(tài)碼,需要的朋友可以參考下2014-08-08Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn)
這篇文章主要介紹了Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10