Nginx反向代理

正向代理

比如, 你買束花, 想要給隔壁工位的測試妹子小麗表白. 但是又怕被人家直面拒絕太沒面子. 於是你把鮮花委託給平時和小麗一起的測試小夥伴小紅. 讓她幫忙把花送給小麗. 這就是一個簡單的代理過程, 小紅作爲代理幫你把花送給了小麗, 當然這種情況在現實中並不推薦使用, 因爲難以避免中間商賺差價,哈哈。

 

在上面的例子中, 你作爲客戶端(請求方), 想要向服務方(小麗)發起請求. 但是礙於面子你主動找到了第三方(小紅)作爲代理向服務方發送請求, 這種情況就是常說的正向代理. 正向代理在互聯網中的使用主要是科學上網, 你想訪問谷歌但是礙於防火牆你只能通過vpn服務器作爲代理才能訪問. 這個時候一般也要找值得信賴的vpn廠商, 避免中間商賺差價。

 

反向代理

關於反向代理的例子, 那就比較多啦. 比如, 孤獨的你躺在牀上夜不能寐. 於是乎, 拿出手機, 點亮了屏幕, 撥通 10086, 中國移動就會隨機分配一個當前處於空閒的客服MM, 你可以和客服MM聊聊天, 問問她家住哪裏, 有沒有男朋友, 她的微信號, 她的手機號, 星座, 八字.......

在這個例子中, 中國移動就充當了反向代理的角色. 你只需要撥打 10086. 至於會不會分配到 MM 會分配到哪個 MM 在接通之前你都是不知道的. 反向代理在互聯網中的使用主要是實現負載均衡. 當你訪問某個網站的時候, 反向代理服務器會從當前網站的所有服務器中選擇一個空閒的服務器爲你響應. 用於均衡每臺服務器的負載率

反向代理是nginx的一個重要功能,在編譯安裝時會默認編譯該模塊。在配置文件中主要配置proxy_pass指令。代理服務器接受客戶端的請求,然後把請求代理給後端真實服務器進行處理,然後再將服務器的響應結果返給客戶端。

 

反向代理作用

與正向代理(正向代理主要是代理客戶端的請求)相反,反向代理主要是代理服務器返回的數據,所以它的作用主要有以下兩點:

1. 可以防止內部服務器被惡意攻擊(內部服務器對客戶端不可見)。

2. 爲負載均衡和動靜分離提供技術支持。

 

反向代理語法

代理服務器的協議,可支持http與https,地址可以指定爲域名或IP地址,以及可選端口。

例如:

Syntax: proxy_pass URL;

Default: —

Context: location, if in location, limit_except

proxy_pass http://localhost:9000/uri/;

proxy_pass http://192.168.0.188:8080;

proxy_pass http://192.168.0.188;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章