Nginx配置反向代理

送分小仙女□ 提交于 2020-01-18 05:22:23

1.反向代理的作用

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

2.反向代理的主要应用

        现在许多大型 web 网站都用到反向代理。除了可以防止外网对内网服务器的恶性攻击、缓存以减少服务器的压力和访问安全控制之外,还可以进行负载均衡,将用户请求分配给多个服务器。

3.反向代理的配置

反向代理的配置
需求:两个tomcat服务通过nginx反向代理
(1)
启动第一个端口号为8080的Tomcat tomcat1:172.16.2.57:8080
启动第二个端口号为8081的Tomcat tomcat2:172.16.2.57:8081
nginx 服务器:192.168.109.102:80
(2)修改本地host文件 模拟真实域名请求
使用管理员身份打开C:\Windows\System32\drivers\etc下的hosts文件 并配置域名映射
192.168.109.102 www.lzh.com
192.168.109.102 bbs.lzh.com
(3)修改nginx/conf目录下的ngnix配置文件nginx.conf
配置方式一:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

        ###当客户端访问www.lzh.com,监听端口号为80直接跳转到真实ip服务器地址 127.0.0.1:8080
        server {
            listen       80;
            server_name  www.lzh.com;
            location / {
                 proxy_pass http://172.16.2.57:8080;
            index  index.html index.htm;
            }
        }
        ###当客户端访问bbs.lzh.com,监听端口号为80直接跳转到真实ip服务器地址 127.0.0.1:8081
        server {
            listen       80;
            server_name  bbs.lzh.com;
            location / {
                  proxy_pass http://172.16.2.57:8081;
            index  index.html index.htm;
            }
        }
}

配置方式二:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;
    
    # 配置一个代理即 tomcat1 服务器
    upstream tomcatServer1 {
        server 172.16.2.57:8080;
    }

    # 配置一个代理即 tomcat2 服务器
    upstream tomcatServer2 {
        server 172.16.2.57:8081;
    }

    # 配置一个虚拟主机
    server {
        listen 80;
        server_name www.lzh.com;
        location / {
                # 域名 www.lzh.com 的请求全部转发到 tomcat_server1 即 tomcat1 服务上
                proxy_pass http://tomcatServer1;
                # 欢迎页面,按照从左到右的顺序查找页面
                index index.jsp index.html index.htm;
        }
    }

    server {
        listen 80;
        server_name bbs.lzh.com;

        location / {
            # 域名 bbs.lzh.com 的请求全部转发到 tomcat_server2 即 tomcat2 服务上
            proxy_pass http://tomcatServer2;
            index index.jsp index.html index.htm;
        }
    }
}

4.启动测试

启动nginx /usr/local/nginx/sbin/nginx
打开浏览器访问http://www.lzh.com/
在这里插入图片描述
访问http://bbs.lzh.com/
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!