管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一、实现原理
; ?0 z' |, j, J# {+ l4 I/ a 反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。 [ a$ F' p x: A; x6 F) Z
2 J* |0 Y4 N6 J# L' H! g 可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。6 n7 b5 d4 `1 j% [1 C+ @
* m8 c+ M- ~: e" l7 \: d二、程序运行过程
5 p( e: j7 W* u浏览器访问页面,假设访问淘宝页面:taobao.com/index.html
X1 B% z9 l& N2 V# f$ j" ?9 {: ?2 b% q8 k
taobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。
$ D" A+ w: {. R# I" @8 {1 \" [! F0 e
nginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。0 K& Y* S4 v# c' c* A: }, `
- T$ [8 Z+ K6 Q% G v- u, q
浏览器运行index.html文件,发起taobao.com/api/getNew请求6 A0 ?* n; l, B7 P, J
6 g' m y! ?* m+ q+ Wnginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。
: N, {) J$ m( w7 w; G1 P5 T9 _7 ^- O4 }( q7 ^) i# M
淘宝服务器将数据返回给nginx,再返回给浏览器执行。 |
|