管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一、实现原理
" S* R6 C6 k2 X4 e' ~ 反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。
/ J7 Y, l$ F! E1 b* ^$ a' u
7 s2 b N3 H7 E, `9 n 可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。
1 c8 G8 {3 _# ~. f* t" K/ y
- O4 A3 E7 x" f' C7 ]& W二、程序运行过程
: I$ |$ X& R, d2 N" W$ I浏览器访问页面,假设访问淘宝页面:taobao.com/index.html8 R( y+ q; Q& e+ p9 _2 m% o
% s$ j% o3 i1 b1 W3 T0 L1 d
taobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。
- }0 R" V. }1 w Z% V" {3 v8 z2 n" ? O9 n4 e4 A. E O- k
nginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。# m2 w7 E; S l3 B( H. P( k6 [( }- ~! F
" `+ `( l3 P6 Q, z6 R浏览器运行index.html文件,发起taobao.com/api/getNew请求$ s/ d& I/ p$ o3 F/ c
! }3 A9 q) c( @4 y8 Z
nginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。4 |4 I+ O; v! R, p3 c2 u
2 i, @0 K) D( F: B* v' O
淘宝服务器将数据返回给nginx,再返回给浏览器执行。 |
|