管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一、实现原理 9 U! ?! N7 H0 _7 D
反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。
P4 E1 I2 f. M, W- N/ y; Y5 h# A4 f" g9 N
可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。! }2 P% {) ]& W+ p5 U6 P
; j, t/ g) X( d3 ~二、程序运行过程" Z/ Q- t& s. _
浏览器访问页面,假设访问淘宝页面:taobao.com/index.html0 @' j5 i7 _2 q3 r
( M' d$ D7 j: I, ^# B; |% wtaobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。
/ P: x, V" b- d( |; \) G: c) z) K' L, c4 {
nginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。/ R- ~* { m4 M" I& ]
3 p6 x- j! O3 L" e! C
浏览器运行index.html文件,发起taobao.com/api/getNew请求9 l0 m' ]( x+ u w, X4 N
! T4 G X: {3 v, inginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。
9 S! Z9 h6 g" }+ N& R' g2 d
R$ L' B/ _% S+ p+ y' l9 Y7 N& p淘宝服务器将数据返回给nginx,再返回给浏览器执行。 |
|