浏览 1.8k
按点赞数排序
按时间排序
看了下面的文章,感觉这个说得更清楚。
"https://www.nginx-cn.net/article/147"
总结来说:正向代理,"它代理的是客户端,代客户端发出请求",是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
正向代理的用途:
(1)访问原来无法访问的资源,如Google
(2)可以做缓存,加速访问资源
(3)对客户端访问授权,上网进行认证
(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息
反向代理,"它代理的是服务端,代服务端接收请求",主要用于服务器集群分布式部署的情况下,反向代理隐藏了服务器的信息。
反向代理的作用:
(1)保证内网的安全,通常将反向代理作为公网访问地址,Web服务器是内网
(2)负载均衡,通过反向代理服务器来优化网站的负载
4
回答于2020-08-07 12:23
个人 的理解是,正向和反向是针对用用角度来说的。正向代理是代理从用户端发出的连接到外部服务器。反向代理是代理从外部服务器到用户端的连接。
正向代理一般是把连接从内网机器代理到外网服务器。比如我们平常使用的NAT上网。
反向代理一般是把来自外部的连接代理到内部服务器,比如负载均衡。
4
回答于2020-06-22 08:52
这是子请求设计引入的复杂度,slice模块、mirror模块、auth_request模块、缓存的异步更新都使用到了子请求机制。
当业务逻辑复杂时,子请求可以简化逻辑,此时,r->main指向主请求,即客户端请求。
当子请求并发执行时,由于网络不可控,有可能子请求的响应先到达了,不能简单返回给客户端,因此过滤模块中会判断r == r->main