Tag: 正向代理

  • 如何使用nginx搭建正向代理和反向代理

    1.正向代理的概念 正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。 2.反向代理的概念 反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理的命名空间(name-space)中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端,就像这些内容原本就是它自己的一样。 简单的区别方法:正向代理就是我们在浏览器可以设置的代理服务器,主动权在浏览者手里。比如我们有时候要查阅一些资料,被国内墙掉了,这时候我可以在国外的服务器上搭建一个nginx正向代理服务器,然后我们就可以通过浏览器设置代理服务器,来翻墙了。反向代理,是浏览者不知情的,服务器端自己假设的。 更加细致的分析:http://z00w00.blog.51cto.com/515114/1031287 下面以nginx为例子来搭建正向代理服务器和反向代理服务器 1.nginx正向代理配置 server{ resolver 8.8.8.8; resolver_timeout 30s; listen 82; location / { proxy_pass http://$http_host$request_uri; proxy_set_header Host $http_host; proxy_buffers 256 4k; proxy_max_temp_file_size 0; proxy_connect_timeout 30; proxy_cache_valid 200 302 10m; proxy_cache_valid 301 1h; proxy_cache_valid any 1m; } } 1、不能有`hostname`。 2、必须有resolver, 即dns,即上面的8.8.8.8,超时时间(30秒)可选。 3、配置正向代理参数,均是由 Nginx 变量组成。 proxy_pass $scheme://$host$request_uri; proxy_set_header Host $http_host; 4、配置缓存大小,关闭磁盘缓存读写减少I/O,以及代理连接超时时间。 proxy_buffers 256 4k; proxy_max_temp_file_size 0; proxy_connect_timeout 30; 5、配置代理服务器 Http 状态缓存时间。 proxy_cache_valid 200 302 10m;…