反向代理(reverse proxy)方式是指用代理服务器来接受Internet上的连接请求,然后 将请求转发给内部网络中的上游服务器,并将从上游服务器上得到的结果返回给Internet请 求连接的客户端,此时代理服务器对外的表现就是一个web服务器。
一般情况下,nginx在前端抗负载和处理静态页面请求,上游服务器可以挂接Apche/ Tomcat等处理复杂业务的动态Web服务器。
服务器A:IP 172.16.0.35 作为一台代理服务器,大致配置如下。
http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;#配置均衡服务器upstream backup.com {server 172.16.0.138:80;#服务器Bserver 172.16.0.70:80; #服务器C}server {listen 80;server_name localhost;location / {#配置反向代理功能proxy_pass http://backup.com;root html;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}
服务器B:IP 172.16.0.138
服务器C:IP 172.16.0.70
均作为普通的web服务器。
在浏览器输入 服务器A的ip地址,也就是反向代理的地址。
172.16.0.35
会发现,通过访问服务器A,最终处理客户端请求的确实服务器B和服务器C。
这种就是利用Nginx实现了反向代理。
