首先声明几个定义:
- 正向代理服务器:A
- 反向代理服务器:B
- 用户:user
- 用户想要访问的站点:server
正向代理
可以理解为 A 和 user 处于同一个 lan 中,A 代表的是 user;当 user 想要访问 server 时,会首先把 server 的 url 传递给 A,A根据用户传过来的 url 代替 user 给 server发送请求。
反向代理
可以理解为 B 和 server处于同一个 lan 中,B 代表的是 server;当 user想要访问 server 时,user 只是单纯的把 B 当做 server ,也就是说 user 会给 B 直接发送请求。 B 收到 user 的请求,根据自己内部的配置,决定自己给哪个 server 发请求。等到 server 返回数据之后,B 再把结果返回给 user。