nginx 反向代理

1. 为什么要使用反向代理?
2. 图解正向代理、反向代理?

1. 为什么要使用反向代理?

  • 可以起到保护网站安全的作用,因为任何来自Internet的请求都必须先经过代理服务器。
  • 通过缓存静态资源,加速Web请求。
  • 实现负载均衡。顺便说下,目前市面上,主流的负载均衡方案,硬件设备有F5,软件方案有四层负载均衡的LVS,七层负载均衡的Nginx、Haproxy等。
  • 节约了有限的IP地址资源

2. 图解正向代理、反向代理?

  • 正向代理:代理的是用户,普通的代理设备是内网用户通过代理设备出外网进行访问
  • 反向代理:代理的是服务器,外网用户通过代理设备访问内网
+--------------+         +-------------+        +------------+
|              |         |             |        |            |
|              |         |             |        |            |
|              |  http   |             | http   |            |
|    client    <--------->    proxy    <-------->   server   |
|              |  https  |             | https  |            |
|              |         |             |        |            |
|              |         |             |        |            |
+--------------+         +-------------+        +------------+

所谓正向代理,是用于代理客户端的。举个很简单的例子:你直接在大陆地区访问google.com肯定是访问不了的,原因大家都知道,现在假如你有一台在美国的主机A,并且能够正常访问,那么你可以将浏览器对google.com的请求先转发给服务器A,服务器A收到请求后,扮演客户端的角色,发起对google.com的请求,服务器A收到响应后,又扮演服务端,将此响应原封不动的返回给你,自此,一次正向代理顺利完成。

反向代理顾名思义是用来代理服务端的。我们也举个简单的例子来说明:我们知道google.com每秒钟要处理如洪水般的网络请求,这些请求如果仅仅让一台单一的服务器处理,肯定是处理不过来的,我们自然而然的想到让多台服务器来处理这些请求,减少每台服务器的压力。但是现在有一个问题,多个服务器那就产生了多个IP,一般的,google.com只能解析到某个固定的IP(为了方便描述,我们暂且这样认为。实际情况下,通过设置也是可以让同一个域名解析到多个IP的),因为现在存在多个Server,我的一个google.com就不能解析到这些服务器上,而且用多个二级域名比如server1.google.comserver2.google.com等等也给用户造成了使用上的不便(一万台服务器,你咋不上天呢?),那该怎么办呢?通过反向代理可以很好的解决这个问题。

                                                               +-----------+
                                                               |           |
                                                        +------> server 1  |
+-----------+                                           |      |           |
|           +--------+                                  |      |           |
|  client 1 |        |                                  |      +-----------+
|           |        |                                  |
+-----------+        |                                  |
                     |         +------------------+     |      +-----------+
                     |         |                  |     |      |           |
+-----------+        |         |                  |     |      | server 2  |
|           |        |         |                  +------------>           |
|  clent 2  +------------------>  reverse proxy   |     |      |           |
|           |        |         |                  |     |      +-----------+
+-----------+        |         |                  |     |
                     |         |                  |     |            .
      .              |         |                  |     |            .
      .              |         +------------------+     |            .
      .              |                                  |
                     |                                  |      +-------- --+
+-----------+        |                                  |      |           |
|           |        |                                  |      | server m  |
|  client n +--------+                                  +------>           |
|           |                                                  |           |
+-----------+                                                  +-----------+
  • 正向代理,代理的是用户。
  • 反向代理,代理的是服务器
  • qq_43638135
    妲己再美究为妃: 博主没有想过自己接一些私活干吗?我现在还没毕业,但是我也确实听说外挂市场自动化游戏脚本市场挺火热的,并且报酬也很丰厚,但是具体的我也不是很清楚,求解答。 (1个月前 #47楼) 查看回复(2) 举报 回复
    22