cncml手绘网

标题: 反向代理的实现原理 [打印本页]

作者: admin    时间: 2020-2-25 04:49
标题: 反向代理的实现原理
一、实现原理 5 D4 u5 j) n+ e8 m2 R/ S% |5 P" f
  反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。
7 k* ]& l: {- F5 b! C) O2 L+ I8 y* x  L3 l
  可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。
/ s: h* y8 p) r1 d2 F. v; `9 _, Z& N
, t% m6 Z* E- k二、程序运行过程. n( [; D& V3 j4 J8 U& k
浏览器访问页面,假设访问淘宝页面:taobao.com/index.html
2 h6 V9 Q2 ^) G' d: F+ \: J  j" f$ [9 A
taobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。* `9 a" A1 @9 i# R. K+ p3 ~/ m: x

. S9 k' }7 H+ V% j) Y5 @" n" Mnginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。( W$ f, T( n  I0 w. q

+ _+ q# D3 D2 G. D- V) O- U浏览器运行index.html文件,发起taobao.com/api/getNew请求
6 L2 u: Y1 l. k4 s0 U0 C" F5 H! b, k' @1 B4 Q3 V
nginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。
& [& L0 C. s9 I% u/ H& R2 @) h$ H2 P$ ]8 Y, F3 ~: I
淘宝服务器将数据返回给nginx,再返回给浏览器执行。




欢迎光临 cncml手绘网 (http://cncml.com/) Powered by Discuz! X3.2