cncml手绘网

标题: 反向代理的实现原理 [打印本页]

作者: admin    时间: 2020-2-25 04:49
标题: 反向代理的实现原理
一、实现原理 8 e4 A" {" {% D4 j
  反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。; Z' }6 B. z! y: D$ `9 B+ A
. _9 ?6 h: N1 M. L# [- F4 I
  可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。- n, i5 }, V. m8 O" p0 O

: y5 k. D! x" I2 n二、程序运行过程* a0 S7 N7 k4 d% v. F9 G
浏览器访问页面,假设访问淘宝页面:taobao.com/index.html6 x8 j: O/ q2 j7 M; g  X2 {* W

. u4 Z4 A4 w. L% r9 jtaobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。
* `- ^1 ~. E1 ^/ B7 A# [1 e4 V: V  N* \" K# W% C
nginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。
5 V( h* s1 G( B( c: {! T& l! p; r. M  w6 u9 c1 r
浏览器运行index.html文件,发起taobao.com/api/getNew请求; h9 t  V- |& W6 Q7 d

) z& P! I" v( q* P9 i% Qnginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。/ e) a3 L- m2 }$ m
/ D( L* I0 u+ ?: b% m
淘宝服务器将数据返回给nginx,再返回给浏览器执行。




欢迎光临 cncml手绘网 (http://bbs.cncml.com/) Powered by Discuz! X3.2