反向代理
百度百科上的解释如下:
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
参考下图可以更清晰的了解这个过程:
通俗的讲,反向代理就是一台负责转发请求及请求结果的服务器,在客户机看来它就是服务器。但事实上它只是服务的入口和出口,真正处理请求和返回结果的是它将请求分发给的服务器。
比如:我们让Nginx监听在80端口,但实际上处理业务的Tomcat使用的端口为8080。那么当客户机发送请求到Nginx,Nginx再将请求转发给Tomcat,Tomcat处理响应的业务逻辑,并将处理结果返回给Nginx,再由Nginx返回给客户机。
作用
- 保护网站安全,在Internet和服务器之间建立一道屏障。敏感信息加密,防止URL重写暴露,充当真正服务器替身防止攻击等。
- 提供缓存功能,减少真正服务器的压力,缓存静态文件,比如CSS,JS,html,图片等静态资源文件。
- 实现负载均衡,将请求进行均衡分发,平衡每个服务器的压力;