nginx 实现 反向代理 demo

来源:互联网 发布:erp系统维护 数据库 编辑:程序博客网 时间:2024/04/28 14:03

       说到http的代理,大家肯定知道有正向代理和反向代理。

       正向代理:用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。

     举个栗子:我想访问一个网站,但是,直接访问不了,比如在国内访问google.com是访问不了的,要想访问google.com要我们要通过代理,代理可以访问google.com,代理访问完google把内容返回给我们显示,常用的方式有SS/蓝灯/自由门/VPN等

       反向代理:实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

     举个栗子:假如我有两个不同网址的网站,但是,只有一台服务器,那我只能开两个端口,端口A对应网站A,端口B对应网站B,这样对服务端来说是没问题的,但是对于用户来说,用户不可能会访问A网站是 www.xxx.com:8081,访问B网站是www.xxx.com:8082的,用户肯定希望访问的方式是 www.xxx.a.com和www.xxx.b.com,这样的话,就需要一个请求拦截和分发的服务器,请求来了都统一交给服务器,服务器再根据具体的请求分发给指定的服务接收者,这个服务器就是nginx(当然nginx还有很多其他的功能,比如静态http服务器、FastCGI等)

这里来写个简单的demo

1.首先下载个nginx,本文用的是nginx-1.10.2

2.准备两个网站,可以直接用tomcat开启两个端口,在本地启动


3.配置本机的host,让8081和8082都有个外网的链接,这里是

192.168.188.1 8081.zy.com
192.168.188.1 8082.zy.com 

如果是外网的话,就是靠DNS了

4.配置nginx.conf

   

5.到此就配置完成了,可以打开浏览器看下效果了

      




原创粉丝点击