Open tomoya06 opened 3 years ago
代理服务器分为正向代理和反向代理两种:
代理一般都指的是正向代理,是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。
为了从原始服务器取得内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代理服务器Z向服务器B转交请求并将获得的内容返回给客户端。
eg.:VPN代理即为正向代理。
HTTP_VIA
HTTP_X_FORWARDED_FOR
反向代理在电脑网络中是代理服务器的一种。服务器根据客户端的请求,从其关系的一组或多组后端服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端。
在反向代理中,客户端只会得知反向代理的IP地址,而不知道在代理服务器后面的服务器集群的存在;但正向代理中,客户端一开始就知道服务器的IP地址,当然也要知道代理服务器的IP。
下图是一个生动形象の手绘图,来区分正向代理和反向代理。
nginx可以配置正向代理和反向代理。其中反向代理使用较多。Nginx的更多用法参考另一条issue
server { resolver 192.168.1.1; #指定DNS服务器IP地址 listen 8080; location / { proxy_pass http://$http_host$request_uri; #设定代理服务器的协议和地址 } }
正向代理测试:参考这篇博客。
curl -I --proxy 192.168.10.10:80 www.baidu.com
server { listen 80; location /demo { proxy_pass http://127.0.0.1:8081; } location /demo1 { proxy_pass http://127.0.0.1:8082; } }
网关也称协议转换器或信关,是互联网工作在OSI传输层上的设施。提供传输层到应用层全方位的服务,一般提供集中协议的服务。网关可以对数据重新分组,以便能在两个不同网络间进行通信。
使用 SSL 等加密手段,在客户端和服务器之间建立一条安全的通信线路。
通信数据转发
代理
代理服务器分为正向代理和反向代理两种:
正向代理 aka. Proxy
代理一般都指的是正向代理,是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。
为了从原始服务器取得内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代理服务器Z向服务器B转交请求并将获得的内容返回给客户端。
eg.:VPN代理即为正向代理。
分类
HTTP_VIA
和HTTP_X_FORWARDED_FOR
。反向代理 aka. Reverse Proxy
反向代理在电脑网络中是代理服务器的一种。服务器根据客户端的请求,从其关系的一组或多组后端服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端。
在反向代理中,客户端只会得知反向代理的IP地址,而不知道在代理服务器后面的服务器集群的存在;但正向代理中,客户端一开始就知道服务器的IP地址,当然也要知道代理服务器的IP。
下图是一个生动形象の手绘图,来区分正向代理和反向代理。
实践
nginx可以配置正向代理和反向代理。其中反向代理使用较多。Nginx的更多用法参考另一条issue
1. 正向代理
正向代理测试:参考这篇博客。
2. 反向代理