cncml手绘网

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

作者: admin    时间: 2020-2-25 04:49
标题: 反向代理的实现原理
一、实现原理
1 {1 d& M: D' h+ G! L  反向代理需要用到nginx。反向代理是在服务器端进行处理。首先修改hosts文件,将域名指向开发者的电脑本身,把自己伪装成服务端,再通过nginx对不同的请求进行转发,把静态资源指向开发者本地电脑的资源,将接口指向实际的服务器。
/ \" i$ n" N5 V' Z) L* p0 U+ [. d6 @4 F- N0 w5 E
  可以理解为把饭店设置在了黑社会的楼下,去楼下买酱排骨饭的时候,饭店米饭自己做,酱排骨则偷偷跑去别的饭店买。: P- l, A/ a' x; z- Y6 g* {
+ j; g% v2 `3 Y9 G- X9 u$ G
二、程序运行过程. k* e$ E# V2 H( F& D1 U
浏览器访问页面,假设访问淘宝页面:taobao.com/index.html" k. B5 `2 f- o# p. F8 V3 {# a- H
* K. f- C0 p8 W+ L" n! S4 Q/ H
taobao.com域名解析先经过hosts文件配置,发现taobao.com域名指向127.0.0.1,则向本机发起请求。
* |) h. O6 \# g
( f  k% r- |9 v- Tnginx接收到taobao.com/index.html请求,根据nginx的配置,将把这个请求转发给127.0.0.1:3000。
) O0 l8 c! w( H' ^; P# f4 y) b' R$ a# O- `
浏览器运行index.html文件,发起taobao.com/api/getNew请求
0 W# q' C: s' u) r* [7 I- F- n. B& z  a* G$ c7 E& I$ T1 u
nginx接收到taobao.com/api/getNew请求请求,根据nginx的配置,将把这个请求转发给真正的淘宝服务器中。& n0 z# ?; q9 y# I1 O
! S0 ]) S- x" ?/ P( o( o
淘宝服务器将数据返回给nginx,再返回给浏览器执行。




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