久久一区二区三区超碰国产精品,亚洲人成在线网站,国产在线精品一区免费香蕉,国产精品免费电影

歡迎您訪問(wèn)Nginx+Tomcat實(shí)現(xiàn)反向代理!

Nginx+Tomcat實(shí)現(xiàn)反向代理

更新時(shí)間:2023-01-17 20:01:23作者:佚名

一、正向代理和反向代理

正向代理類(lèi)似一個(gè)跳板機(jī),代理訪問(wèn)外部資源。例如:我們使用要訪問(wèn)國(guó)外網(wǎng)站,但是由于網(wǎng)絡(luò)限制,我無(wú)法正常訪問(wèn)到國(guó)外網(wǎng)站,但是我能訪問(wèn)一個(gè)代理服務(wù)器,而這個(gè)代理服務(wù)器能訪問(wèn)那個(gè)我不能訪問(wèn)的網(wǎng)站。于是我先連上代理服務(wù)器,告訴他我需要那個(gè)無(wú)法訪問(wèn)網(wǎng)站的內(nèi)容,代理服務(wù)器去取回來(lái),然后返回給我。從網(wǎng)站的角度,只在代理服務(wù)器來(lái)取內(nèi)容的時(shí)候有一次記錄,有時(shí)候并不知道是用戶的請(qǐng)求,也隱藏了用戶的資料,這取決于代理告不告訴網(wǎng)站。

正向代理 是一個(gè)位于客戶端和原始服務(wù)器( )之間的服務(wù)器,為了從原始服務(wù)器取得內(nèi)容,客戶端向代理發(fā)送一個(gè)請(qǐng)求并指定目標(biāo)(原始服務(wù)器),然后代理向原始服務(wù)器轉(zhuǎn)交請(qǐng)求并將獲得的內(nèi)容返回給客戶端。客戶端必須要進(jìn)行一些特別的設(shè)置才能使用正向代理。

正向代理的用途:

(1)訪問(wèn)原來(lái)無(wú)法訪問(wèn)的資源,如

(2)可以做緩存,加速訪問(wèn)資源

(3)對(duì)客戶端訪問(wèn)授權(quán),上網(wǎng)進(jìn)行認(rèn)證

(4)代理可以記錄用戶訪問(wèn)記錄(上網(wǎng)行為管理),對(duì)外隱藏用戶信息

反向代理( Proxy)方式是指以代理服務(wù)器來(lái)接受上的連接請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器;并將從服務(wù)器上得到的結(jié)果返回給上請(qǐng)求連接的客戶端,此時(shí)代理服務(wù)器對(duì)外就表現(xiàn)為一個(gè)服務(wù)器。

通常的代理服務(wù)器,只用于代理內(nèi)部網(wǎng)絡(luò)對(duì)的連接請(qǐng)求,客戶機(jī)必須指定代理服務(wù)器,并將本來(lái)要直接發(fā)送到Web服務(wù)器上的http請(qǐng)求發(fā)送到代理服務(wù)器中。當(dāng)一個(gè)代理服務(wù)器能夠代理外部網(wǎng)絡(luò)上的主機(jī),訪問(wèn)內(nèi)部網(wǎng)絡(luò)時(shí),這種代理服務(wù)的方式稱(chēng)為反向代理服務(wù)。

反向代理的作用:

反向代理服務(wù)器通常有兩種模型,它可以作為內(nèi)容服務(wù)器的替身,也可以作為內(nèi)容服務(wù)器集群的負(fù)載均衡器。

(1)保證內(nèi)網(wǎng)的安全,可以使用反向代理提供WAF功能,阻止web攻擊

大型網(wǎng)站,通常將反向代理作為公網(wǎng)訪問(wèn)地址,Web服務(wù)器是內(nèi)網(wǎng)。 如果您的內(nèi)容服務(wù)器具有必須保持安全的敏感信息,如信用卡號(hào)數(shù)據(jù)庫(kù),可在防火墻外部設(shè)置一個(gè)代理服務(wù)器作為內(nèi)容服務(wù)器的替身。代理服務(wù)器在安全數(shù)據(jù)庫(kù)和可能的惡意攻擊之間提供了又一道屏障。與有權(quán)訪問(wèn)整個(gè)數(shù)據(jù)庫(kù)的情況相對(duì)比,就算是僥幸攻擊成功,作惡者充其量也僅限于訪問(wèn)單個(gè)事務(wù)中所涉及的信息。未經(jīng)授權(quán)的用戶無(wú)法訪問(wèn)到真正的內(nèi)容服務(wù)器,因?yàn)榉阑饓ν分辉试S代理服務(wù)器有權(quán)進(jìn)行訪問(wèn)。

(2)負(fù)載均衡,通過(guò)反向代理服務(wù)器來(lái)優(yōu)化網(wǎng)站的負(fù)載

以在一個(gè)組織內(nèi)使用多個(gè)代理服務(wù)器來(lái)平衡各 Web 服務(wù)器間的網(wǎng)絡(luò)負(fù)載。在此模型中,可以利用代理服務(wù)器的高速緩存特性,創(chuàng)建一個(gè)用于負(fù)載平衡的服務(wù)器池。此時(shí),代理服務(wù)器可以位于防火墻的任意一側(cè)。如果 Web 服務(wù)器每天都會(huì)接收大量的請(qǐng)求,則可以使用代理服務(wù)器分擔(dān) Web 服務(wù)器的負(fù)載并提高網(wǎng)絡(luò)訪問(wèn)效率。

對(duì)于客戶機(jī)發(fā)往真正服務(wù)器的請(qǐng)求,代理服務(wù)器起著中間調(diào)停者的作用。代理服務(wù)器會(huì)將所請(qǐng)求的文檔存入高速緩存。如果有不止一個(gè)代理服務(wù)器,DNS 可以采用“循環(huán)復(fù)用法”選擇其 IP 地址,隨機(jī)地為請(qǐng)求選擇路由。客戶機(jī)每次都使用同一個(gè) URL,但請(qǐng)求所采取的路由每次都可能經(jīng)過(guò)不同的代理服務(wù)器。

可以使用多個(gè)代理服務(wù)器來(lái)處理對(duì)一個(gè)高用量?jī)?nèi)容服務(wù)器的請(qǐng)求,這樣做的好處是內(nèi)容服務(wù)器可以處理更高的負(fù)載,并且比其獨(dú)自工作時(shí)更有效率。在初始啟動(dòng)期間,代理服務(wù)器首次從內(nèi)容服務(wù)器檢索文檔,此后,對(duì)內(nèi)容服務(wù)器的請(qǐng)求數(shù)會(huì)大大下降。

二、nginx的反向代理實(shí)踐

nginx支持配置反向代理,通過(guò)反向代理實(shí)現(xiàn)網(wǎng)站的負(fù)載均衡。

兩個(gè)服務(wù)器通過(guò)nginx反向代理,本例子通過(guò)兩臺(tái)虛擬機(jī)實(shí)現(xiàn)國(guó)外的代理服務(wù)器,一臺(tái)虛擬機(jī)提供ngxin服務(wù),另一臺(tái)虛擬機(jī)提供兩個(gè)服務(wù)。

nginx負(fù)載均衡器:127.0.0.1

:127.0.0.1:8080

:127.0.0.1:8081

配置好后,啟動(dòng),我這里是直接替換了下的ROOT文件夾的內(nèi)容,輸入上述的ip+端口即可訪問(wèn)到發(fā)布的項(xiàng)目了。(分別刪除目錄下所有文件,新建一個(gè)文件夾ROOT,并在該目錄下新建index.html)

訪問(wèn)結(jié)果:

訪問(wèn)結(jié)果:

nginx通過(guò) 配置代理站點(diǎn),實(shí)現(xiàn)負(fù)載均衡。

啟動(dòng)、關(guān)閉、重啟Nginx服務(wù)器

注意:一定要在nginx.exe文件所在的文件夾下操作。

(1)啟動(dòng):

H:nginx-1.12.2>start nginx

或H:nginx-1.12.2>nginx.exe

注:建議使用第一種,第二種會(huì)使你的cmd窗口一直處于執(zhí)行中國(guó)外的代理服務(wù)器,不能進(jìn)行其他命令操作。

(2)停止:

H:nginx-1.12.2>nginx.exe -s stop

或H:nginx-1.12.2>nginx.exe -s quit

注:stop是快速停止nginx,可能并不保存相關(guān)信息;quit是完整有序的停止nginx,并保存相關(guān)信息。

(3)重新載入Nginx:

H:nginx-1.12.2>nginx.exe -s

當(dāng)配置信息修改,需要重新載入這些配置時(shí)使用此命令。

(4)重新打開(kāi)日志文件:

H:nginx-1.12.2>nginx.exe -s

測(cè)試是否配置成功

經(jīng)過(guò)測(cè)試,輸入127.0.0.1會(huì)訪問(wèn)到下圖內(nèi)容,多次刷新,出現(xiàn)的內(nèi)容會(huì)在下面兩圖間切換,其實(shí)這正是我們上述和容器的結(jié)果,測(cè)試成功。

可能會(huì)遇到的問(wèn)題(進(jìn)程關(guān)閉失敗)

在使用的過(guò)程中,你可能會(huì)遇到一個(gè)很奇葩的問(wèn)題,就是當(dāng)關(guān)閉命令執(zhí)行了無(wú)數(shù)遍,頁(yè)面卻還是可以直接用域名訪問(wèn)。

這個(gè)時(shí)候就說(shuō)明你的進(jìn)程并沒(méi)有真正關(guān)閉,我們可以用命令來(lái)查詢(xún)一下:

cmd中輸入: -an | find "0:80"

如果有,說(shuō)明真的沒(méi)有關(guān)閉這個(gè)進(jìn)程。沒(méi)有,那就看看是不是瀏覽器緩存的問(wèn)題。

針對(duì)進(jìn)程不能正常關(guān)閉,可以用如下命令來(lái)關(guān)閉: /F /IM nginx.exe 或者 /pid 你要關(guān)閉的pid /F

參考:

主站蜘蛛池模板: 乌拉特后旗| 潜江市| 资阳市| 山东省| 大英县| 库车县| 招远市| SHOW| 武穴市| 芦山县| 康定县| 永州市| 溧水县| 上饶县| 花莲县| 富源县| 荣成市| 西宁市| 潼南县| 青阳县| 南涧| 绥化市| 鲁甸县| 古田县| 安远县| 固镇县| 河源市| 连平县| 广元市| 汝城县| 武汉市| 上杭县| 青州市| 乌苏市| 遵义县| 东辽县| 大埔区| 华安县| 阿克陶县| 莆田市| 无极县|