本篇內(nèi)容主要講解“Nginx如何配置ssl證書實(shí)現(xiàn)Https訪問”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Nginx如何配置SSL證書實(shí)現(xiàn)Https訪問”吧!
專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)固安免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
背景
由于項目需求,安全起見,需要將之前的http接口訪問變成https訪問,所以需要配置ssl證書。項目的架構(gòu)是這樣的:
基本架構(gòu)是硬負(fù)載(readwhere)+ 軟負(fù)載(nginx)+ tomcat集群,現(xiàn)在的問題是ssl證書要配置在哪里,直接配置在硬負(fù)載上?還是分別配置在nginx和tomcat上?還是其他的配置方法呢?
首先在硬負(fù)載上配置放棄了,然后通過在網(wǎng)上查找資料,發(fā)現(xiàn)可以只在nginx上配置證書,就是說nginx接入使用https,而nginx與tomcat之間使用http進(jìn)行銜接,這樣就游了一個整體思路。
關(guān)于ssl證書
關(guān)于ssl證書這里簡單進(jìn)行介紹,也是因為項目需要,進(jìn)行了簡單的了解。
ssl證書分為大致分為三種,域名級(dv)、企業(yè)級(ov)、增強(qiáng)級(ev),安全性以及價格依次增加。根據(jù)自己的需求進(jìn)行選擇,個人使用可以使用dv,便宜;企業(yè)用的話一般使用ov,特殊情況下使用ev。
ssl證書配置
由于nginx對于ssl證書配置的支持才使得這種實(shí)現(xiàn)方式成為了可能,不得不感嘆nginx的強(qiáng)大。
證書準(zhǔn)備
nginx配置需要.pem/.crt證書 + .key秘鑰,如果您現(xiàn)在擁有的是其他形式的證書,請按照相關(guān)說明轉(zhuǎn)化成要求的證書類型,否則是不能完成證書的配置的。一般購買商家都會有相應(yīng)的轉(zhuǎn)換工具。
準(zhǔn)備好了之后,將證書和秘鑰放到nginx的conf目錄下(也就是跟配置文件nginx.conf在同一個目錄),這里特別需要注意:
如果是在linux系統(tǒng)下配置,這就算準(zhǔn)備好了;
如果是在windows系統(tǒng)下,需要將.key秘鑰文件中的密碼去除,否則就會導(dǎo)致配置之后nginx啟動不起來,這里是一個坑,本人就卡在了這里,具體處理方法也很簡單,在網(wǎng)上下載openssl的windows版本,然后將cmd切換到bin目錄下,執(zhí)行openssl rsa -in server.key -out server2.key,生成的server2.key就是配置需要的秘鑰文件,但是需要將文件名改成server.key。
修改nginx配置文件
以下是我nginx.conf配置文件的局部,端口著迷沒有使用默認(rèn)的443,而是改成了8185,根據(jù)您的需要進(jìn)行修改即可,其他配置基本上按照下面就沒問題。
server { listen 8185; server_name localhost; ssl on; ssl_certificate server.pem; ssl_certificate_key server.key; ssl_session_timeout 5m; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_ciphers high:!rc4:!md5:!anull:!enull:!null:!dh:!edh:!exp:+medium; ssl_prefer_server_ciphers on; location / { proxy_set_header host $host:$server_port; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; proxy_set_header x-forwarded-proto $scheme; proxy_connect_timeout 5; proxy_send_timeout 5; proxy_read_timeout 5; proxy_pass http://qlddm_server; }
修改tomcat配置文件
雖然不需要在tomcat配置證書,但是仍然需要修改一下tomcat的配置server.xml配置文件,具體包含兩個地方:
<connector executor="tomcatthreadpool" port="7083" protocol="org.apache.coyote.http11.http11nio2protocol" connectiontimeout="20000" maxconnections="8000" redirectport="8185" proxyport="8185" enablelookups="false" acceptcount="100" maxpostsize="10485760" compression="on" disableuploadtimeout="true" compressionminsize="2048" acceptorthreadcount="2" compressablemimetype="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript" uriencoding="utf-8" />
需要將redirectport和proxyport都修改為您的nginx監(jiān)聽端口號。
<valve classname="org.apache.catalina.valves.remoteipvalve" remoteipheader="x-forwarded-for" protocolheader="x-forwarded-proto" protocolheaderhttpsvalue="https" httpsserverport="8185"/>
需要增加以上的value標(biāo)簽,注意httpsserverport也需要修改為nginx監(jiān)聽端口號。
到此,相信大家對“Nginx如何配置SSL證書實(shí)現(xiàn)Https訪問”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
本文名稱:Nginx如何配置SSL證書實(shí)現(xiàn)Https訪問
網(wǎng)頁路徑:http://aaarwkj.com/article46/iipeeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、微信公眾號、移動網(wǎng)站建設(shè)、網(wǎng)站排名、虛擬主機(jī)、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)