Nginx反向代理學(xué)習(xí)實(shí)例教程
一、反向代理準(zhǔn)備工作
1.在linux系統(tǒng)中安裝Tomcat
將tomcat解壓到/usr/src下。啟動(dòng)需要jdk環(huán)境。沒(méi)有jdk環(huán)境的裝一下,我centos7自帶jdk1.8。
2.啟動(dòng)tomcat
進(jìn)入tomcat的bin目錄中,有個(gè)startup.sh文件。
./startup.sh啟動(dòng)tomcat服務(wù)器
3.對(duì)外開(kāi)放訪問(wèn)的端口
查看當(dāng)前開(kāi)放的端口號(hào)
firewall-cmd --list-all
設(shè)置開(kāi)放的端口號(hào)
firewall-cmd --add-port=80/tcp --permanent firewall-cmd --add-port=8080/tcp --permanent
重啟防火墻
firewall-cmd --reload
4.測(cè)試訪問(wèn)tomcat
http://192.168.1.173:8080/
自此前期準(zhǔn)備工作完畢!!
二、反向代理案例(一)
1.實(shí)現(xiàn)效果
打開(kāi)瀏覽器,在瀏覽器地址欄輸入www.123.com,跳轉(zhuǎn)到linux系統(tǒng)tomcat頁(yè)面
2.具體配置
第一步:在本地 /etc/hosts文件添加
第二步 在nginx進(jìn)行請(qǐng)求轉(zhuǎn)發(fā)的配置(反向代理配置)
cd /usr/local/nginx/conf
vim nginx.conf
修改添加一下內(nèi)容
3.測(cè)試
訪問(wèn)www.123.com
通過(guò)訪問(wèn)nginx的ip訪問(wèn)tomcat,成功?。。。?/p>
二、反向代理案例(二)
實(shí)現(xiàn)效果
使用nginx反向代理,根據(jù)訪問(wèn)的路徑跳轉(zhuǎn)到不同端口的服務(wù)中,nginx監(jiān)聽(tīng)端口為9001
- 訪問(wèn)http://192.168.1.173/edu/ 直接跳轉(zhuǎn)到192.168.1.173:8080
- 訪問(wèn)http://192.168.1.173:9001/vod/ 直接跳轉(zhuǎn)到192.168.1.173:8081
1.準(zhǔn)備工作
(1)準(zhǔn)備兩個(gè)tomcat服務(wù)器,一個(gè)8080端口,一個(gè)8081端口
(2)創(chuàng)建2個(gè)文件夾,分別放入tomcat的壓縮包,解壓,然后修改其中一個(gè)tomcat中的conf中的server.xml文件,將端口改為8081。
(3)在webapps文件下創(chuàng)建分別創(chuàng)建edu、vod文件夾,文件夾中創(chuàng)建a.html測(cè)試頁(yè)面顯示端口號(hào)。
2.具體配置
(1)找到nginx配置文件,進(jìn)行反向代理配置
(2)開(kāi)放對(duì)外訪問(wèn)的端口號(hào) 9001 8080 8081
location 指令說(shuō)明
該指令用于匹配URL
語(yǔ)法如下:
location [ = | ~ | ~* | ^~] uri { }
1、= :用于不含正則表達(dá)式的 uri 前,要求請(qǐng)求字符串與 uri 嚴(yán)格匹配,如果匹配
成功,就停止繼續(xù)向下搜索并立即處理該請(qǐng)求。
2、~:用于表示 uri 包含正則表達(dá)式,并且區(qū)分大小寫(xiě)。
3、~*:用于表示 uri 包含正則表達(dá)式,并且不區(qū)分大小寫(xiě)。
4、^~:用于不含正則表達(dá)式的 uri 前,要求 Nginx 服務(wù)器找到標(biāo)識(shí) uri 和請(qǐng)求字
符串匹配度最高的 location 后,立即使用此 location 處理請(qǐng)求,而不再使用 location
塊中的正則 uri 和請(qǐng)求字符串做匹配。
注意:如果 uri 包含正則表達(dá)式,則必須要有 ~ 或者 ~ 標(biāo)識(shí)。*
最終測(cè)試
總結(jié)
到此這篇關(guān)于Nginx反向代理學(xué)習(xí)的文章就介紹到這了,更多相關(guān)Nginx反向代理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Nginx(PHP/fastcgi)的PATH_INFO問(wèn)題
PATH_INFO是一個(gè)CGI 1.1的標(biāo)準(zhǔn),經(jīng)常用來(lái)做為傳參載體. 比如, 我們可以使用PATH_INFO來(lái)代替Rewrite來(lái)實(shí)現(xiàn)偽靜態(tài)頁(yè)面, 另外不少PHP框架也使用PATH_INFO來(lái)作為路由載體.2011-08-08Nginx下支持Thinkphp URL Rewrite的配置示例
這篇文章主要介紹了Nginx下支持Thinkphp URL Rewrite的配置示例,本文直接給出配置示例,需要的朋友可以參考下2015-07-07一文搞懂Nginx限流(簡(jiǎn)單實(shí)現(xiàn))
這篇文章主要介紹了一文搞懂Nginx限流(簡(jiǎn)單實(shí)現(xiàn)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05nginx利用referer指令實(shí)現(xiàn)防盜鏈配置
nginx模塊ngx_http_referer_module通常用于阻擋來(lái)源非法的域名請(qǐng)求,我們應(yīng)該牢記。下面這篇文章主要介紹了nginx利用referer指令實(shí)現(xiàn)防盜鏈配置的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-03-03Nginx服務(wù)器中關(guān)于SSL的安全配置詳解
這篇文章主要介紹了Nginx服務(wù)器中關(guān)于SSL的安全配置詳解,2014年曝出的SSL安全漏洞無(wú)疑為整個(gè)業(yè)界帶來(lái)了巨大震動(dòng),本文便對(duì)此給出相關(guān)安全維護(hù)方法,需要的朋友可以參考下2015-06-06Nginx中反向代理+負(fù)載均衡+服務(wù)器宕機(jī)解決辦法詳解
這篇文章主要介紹了Nginx中反向代理+負(fù)載均衡+服務(wù)器宕機(jī)解決辦法詳解,反向代理保證系統(tǒng)安全,不暴露服務(wù)器IP,利用nginx服務(wù)器,利用內(nèi)網(wǎng)ip進(jìn)行訪問(wèn),避免出現(xiàn)攻擊服務(wù)器的情況,需要的朋友可以參考下2024-01-01nginx配置wss協(xié)議的實(shí)現(xiàn)
本文主要介紹了nginx配置wss協(xié)議的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03Nginx修改默認(rèn)80端口(解決跟Tomcat的端口沖突)
本文主要介紹了Nginx修改默認(rèn)80端口(解決跟Tomcat的端口沖突),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07Nginx Rewrite模塊應(yīng)用的幾種場(chǎng)景
這篇文章主要介紹了Nginx Rewrite模塊應(yīng)用的幾種場(chǎng)景,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11