nginx(3)之反向代理、限速
阿新 • • 發佈:2018-11-22
反向代理
原理
1、客戶機在發起請求時,不會直接傳送給目的主機,而是先發送給代理伺服器;
2、代理伺服器接收客戶機請求後,再向業務伺服器發出請求;
3、業務伺服器 接收請求、處理請求 最後 響應請求;
3、代理伺服器接收業務主機返回的資料;
4、代理伺服器響應客戶端請求;
5、客戶端通過瀏覽器渲染請求並展示給使用者。
正向代理
正向代理 是一個位於客戶端和原始伺服器(origin server)之間的伺服器,為了從原始伺服器取得內容,客戶端向代理髮送一個請求並指定目標(原始伺服器),然後代理向原始伺服器轉交請求並將獲得的內容返回給客戶端。客戶端必須要進行一些特別的設定才能使用正向代理。
正向代理的用途:
- 訪問原來無法訪問的資源,如google;
- 可以做快取,加速訪問資源;
- 對客戶端訪問授權,上網進行認證;
- 代理可以記錄使用者訪問記錄(上網行為管理),對外隱藏使用者資訊;
應用場景
1、堡壘機應用:業務伺服器只接收來自堡壘機的連結訪問(例如:代理伺服器的Ip或特定埠),其他的都拒絕。
2、釋出內網伺服器:
3、快取應用:將靜態資料快取起來,提高使用者體驗。
根據28法則,快取伺服器處理80%的資料,業務伺服器處理20%的資料。
程式碼實現
客戶端 win7 http://192.168.244.128 反代 nginx ip128 業務機器 https://www.cnblogs.com/fqh202 http://101.37.225.65/
在客戶機輸入 http://192.168.244.128,反代伺服器向 http://101.37.225.65/ 請求資料並返回:
server { listen 80; server_name www.abc.com; charset utf8; location / { proxy_pass http://101.37.225.65:80; } }
測試: