网站首页 > 技术教程 正文
上一篇文章介绍的是《通过NGINX反向代理实现多个域名站点复用一个公网IP》的讲解和实战。那么这篇文章想跟大家再进一步分享一下,我对反向代理及负载均衡的理解。
- 什么是正向代理,什么是反向代理?
首先“反向代理”是相对于“正向代理”而言的,有朋友会问这个反向代理到底是怎么个反向法?大家在公司里面,如果公司对于上网管控比较严格的话,通常在内网里是不能通过路由的方式直接上网的,公司的网管会要求你必须设置代理服务器(浏览器或微信客户端网络设置选项里)来访问互联网,可能要需要进行账户密码的验证。所谓代理,就比如你要上www.163.com这个网站,你浏览器的请求并不是直接与163.com去建立连接的,而是跟你的代理服务器去建立连接请求,然后你的代理服务器再代替你去跟www.163.com建立请求连接,最后网站把请求结果的页面返回给代理服务器,代理服务器再把页面返回给你。这种“从内到外”的访问路径,就是正向代理了。
那么反向代理就很好理解了,它是相对于正向代理的“从内到外”而言的,反向代理的访问路径则是“从外到内”。反向代理的使用场景通常是,如果你有一台web服务器,想提供互联网用户访问,然后出于安全考虑你不想让你的web服务器直接暴露在公网,又或者你的web服务器不是一台而是几台服务器组成的一个集群,那么这个时候你就会考虑部署反向代理服务器顺便实现对web集群多台服务器的负载均衡。整个访问流程跟正向代理一致,假如你的网站域名是www.aaa.com,当用户通过浏览器访问你这个站点时,实际上是跟你的反向代理服务器建立的三次握手连接,再由反向代理服务器再跟后端的web服务器进行建立请求连接,后端web服务器响应请求结果给反向代理,再由反向代理服务器把结果返回给用户。
本文暂时没有评论,来添加一个吧(●'◡'●)