管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一、实现原理
* x5 w# l8 q+ a- _; }7 Q 反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。
' p, r% b5 {; \* e; ~+ c- d/ z. A+ l+ q7 v: ~
可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。
! R' v, L$ O+ M8 R2 R3 ]
# x2 m9 m" O* H" S- g二、程序运行过程- E- z% t. ?- G L( @2 {2 B
浏览器访问页面,假设访问淘宝页面:taobao.com/index.html% P/ J$ f# K4 R) w
, M3 N" a6 v8 ~5 O/ i6 c
taobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。
7 W; w0 z! \; U: J8 z. Y2 J7 n1 ~* N' Y2 B6 z" i% m
nginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。* G, ~. z/ z3 U% R! x
* J, V9 V/ P% F9 \* u
浏览器运行index.html文件,发起taobao.com/api/getNew请求6 I3 N& Y" m" E0 {. u0 [
* j9 B# I3 s9 knginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。6 G) U, F; Z# t
! r4 [4 y2 d/ k; O% E
淘宝服务器将数据返回给nginx,再返回给浏览器执行。 |
|