首页 课程 师资 教程 报名

实现nginx反向代理(附nginx教程)

  • 2019-07-31 18:09:52
  • 6790次 动力节点



111.png



一,什么是反向代理:


反向代理服务器架设在服务器端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。



二,反向代理的主要作用:


目前web网站使用反向代理,除了可以防止外网对内网服务器的恶性攻击、缓存以减少服务器的压力和访问安全控制之外,


还可以进行负载均衡,将用户请求分配给多个服务器。



三,配置反向代理(Nginx):


Nginx作为近年来较火的反向代理服务器,安装在目的主机端,主要用于转发客户机请求,后台有多个http服务器提供服务,


nginx的功能就是把请求转发给后面的服务器,决定哪台目标主机来处理当前请求。


(1)模拟2个http服务器作为目标主机, 分别将这两台主机的端口改为8081和8082;


(2)配置IP域名如下:


    192.168.72.49test8081.com


    192.168.72.49 test8082.com


(3)配置nginx.conf,如下:


upstream tomcatserver1 {  

    server 192.168.72.49:8081;  

    }  

upstream tomcatserver2 {  

    server192.168.72.49:8082;  

    }  

server {  

        listen       80;  

        server_name  test8081.com;  

  

        #charset koi8-r;  

  

        #access_log  logs/test8081.com.log  main;  

  

        location / {  

            proxy_pass   http://tomcatserver1;  //反向代理服务器的地址

            index  index.html index.htm;  

        }       

    }  

server {  

        listen       80;  

        server_name  test8082.com;  

  

        #charset koi8-r;  

  

        #access_log  logs/test8082.com.log  main;  

  

        location / {  

            proxy_pass   http://tomcatserver2;  

            index  index.html index.htm;  

        }          

    }  


(4) 重启Nginx服务,验证结果。


service nginx restart


使用浏览器访问test8081.com,由于nginx反向代理接受客户机请求,找到server_name为test8081.com的server节点, 根据proxy_pass对应的http路径,将请求转发到upstream tomcatserver1上,即端口号为8081的tomcat服务器。


rr.jpg

微信扫一扫关注该公众号


视频学习资源:在本公众号后台回复【ngnix】即可获取



选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交