一、实现原理 . f1 X* s o* n5 w @
反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。& n. g; Q1 i. _4 G# Y" M
$ E. A. G% ~( p |1 _: n: y# b
可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。 # ^- h/ Q6 M/ G: D$ q! V0 ~6 @, W + H: z; M T, d- ~* R6 d' z/ T3 r二、程序运行过程1 h( C6 b* X2 h) F2 V
浏览器访问页面,假设访问淘宝页面:taobao.com/index.html+ ?% a4 m7 C+ K! D5 r
5 V, a5 D7 M. j. a9 }( xtaobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。 ' |; P' T5 X& q: c' u) _8 u/ {3 N& A9 K
nginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。 1 t3 H+ F3 t% E( K) N1 Q9 V 6 U: B% {8 R9 ?* f5 t6 t: T浏览器运行index.html文件,发起taobao.com/api/getNew请求/ v& d. [5 V7 P3 v% {- s" T