1.正向代理:
正向代理类似一个跳板机,代理访问外部资源。
典型应用:为在防火墙内的局域网客户端提供访问Internet的途径 如:IE例外设置代理服务器
正向代理配置实例:为不影响默认配置:添加一个虚拟主机:
include vhosts/*.conf;
vi proxy.conf
server {
access_log /usr/local/nginx/access.log;
listen 8090;
location / {
##DNS地址 多个DNS地址用空格隔开
resolver 192.168.0.1;
##环境变量通配一般不改
proxy_pass $scheme://$http_host$request_uri;
proxy_buffers 256 4k; proxy_max_temp_file_size 0k;
}
}
2.反向代理:
反向代理(Reverse Proxy)实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。典型用途是将 防火墙后面的服务器提供给Internet用户访问
nginx支持配置反向代理,通过反向代理实现网站的负载均衡。这部分先写一个nginx的配置,后续再深入研究nginx的代理模块和负载均衡模块。
nginx通过proxy_pass 配置代理站点,upstream实现负载均衡。
server {
........
upstream qinyujie { #定义负载均衡站点名称
server 192.168.0.161:80;
server 192.168.0.162:80; #后端真实ip一般指内网
}
location / {
proxy_pass http://qinyujie; #配置代理站点
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}