1决帖、前言
補(bǔ)充一下知識(shí)。首先弄清楚什么是正向代理蓖捶,什么是反向代理地回,然后是二者在實(shí)際使用中展示的方式是什么樣的,最后總結(jié)一下正向代理用來做什么俊鱼,反向代理可以做什么刻像。
2、正向代理
正向代理類似一個(gè)跳板機(jī)亭引,代理訪問外部資源绎速。
舉個(gè)例子:
我是一個(gè)用戶皮获,我訪問不了某網(wǎng)站焙蚓,但是我能訪問一個(gè)代理服務(wù)器,這個(gè)代理服務(wù)器呢,他能訪問那個(gè)我不能訪問的網(wǎng)站,于是我先連上代理服務(wù)器,告訴他我需要那個(gè)無法訪問網(wǎng)站的內(nèi)容购公,代理服務(wù)器去取回來,然后返回給我萌京。從網(wǎng)站的角度,只在代理服務(wù)器來取內(nèi)容的時(shí)候有一次記錄宏浩,有時(shí)候并不知道是用戶的請(qǐng)求知残,也隱藏了用戶的資料,這取決于代理告不告訴網(wǎng)站比庄。
客戶端必須設(shè)置正向代理服務(wù)器求妹,當(dāng)然前提是要知道正向代理服務(wù)器的IP地址,還有代理程序的端口佳窑。
例如之前使用過這類軟件例如CCproxy制恍,http://www.ccproxy.com/?需要在瀏覽器中配置代理的地址。
總結(jié)來說:正向代理 是一個(gè)位于客戶端和原始服務(wù)器(origin server)之間的服務(wù)器神凑,為了從原始服務(wù)器取得內(nèi)容净神,客戶端向代理發(fā)送一個(gè)請(qǐng)求并指定目標(biāo)(原始服務(wù)器),然后代理向原始服務(wù)器轉(zhuǎn)交請(qǐng)求并將獲得的內(nèi)容返回給客戶端溉委【槲ǎ客戶端必須要進(jìn)行一些特別的設(shè)置才能使用正向代理。
正向代理的用途:
(1)訪問原來無法訪問的資源瓣喊,如google
(2) 可以做緩存坡慌,加速訪問資源
(3)對(duì)客戶端訪問授權(quán),上網(wǎng)進(jìn)行認(rèn)證
(4)代理可以記錄用戶訪問記錄(上網(wǎng)行為管理)型宝,對(duì)外隱藏用戶信息
例如CCProxy用途:
3八匠、反向代理
初次接觸方向代理的感覺是,客戶端是無感知代理的存在的趴酣,反向代理對(duì)外都是透明的梨树,訪問者者并不知道自己訪問的是一個(gè)代理。因?yàn)榭蛻舳瞬恍枰魏闻渲镁涂梢栽L問岖寞。
反向代理(Reverse Proxy)實(shí)際運(yùn)行方式是指以代理服務(wù)器來接受internet上的連接請(qǐng)求抡四,然后將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給internet上請(qǐng)求連接的客戶端仗谆,此時(shí)代理服務(wù)器對(duì)外就表現(xiàn)為一個(gè)服務(wù)器指巡。
反向代理的作用:
(1)保證內(nèi)網(wǎng)的安全,可以使用反向代理提供WAF功能隶垮,阻止web攻擊
大型網(wǎng)站藻雪,通常將反向代理作為公網(wǎng)訪問地址,Web服務(wù)器是內(nèi)網(wǎng)狸吞。
(2)負(fù)載均衡勉耀,通過反向代理服務(wù)器來優(yōu)化網(wǎng)站的負(fù)載
4指煎、二者區(qū)別
借用知乎兩張圖來表達(dá):
圖來自:https://www.zhihu.com/question/24723688
5、nginx的反向代理
nginx支持配置反向代理便斥,通過反向代理實(shí)現(xiàn)網(wǎng)站的負(fù)載均衡至壤。這部分先寫一個(gè)nginx的配置,后續(xù)需要深入研究nginx的代理模塊和負(fù)載均衡模塊枢纠。
nginx通過proxy_pass_http 配置代理站點(diǎn)像街,upstream實(shí)現(xiàn)負(fù)載均衡。
參考資料:
http://z00w00.blog.51cto.com/515114/1031287
http://blog.csdn.net/m13666368773/article/details/8060481