首页 > 其他 > 详细

nginx配置虚拟主机、反向代理和负载均衡

时间:2019-08-21 19:22:33      阅读:93      评论:0      收藏:0      [点我收藏+]

为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰。

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

1 基于端口的虚拟主机配置

1.1将html文件复制两份,分别命名为html-81、html-82,并且修改文件夹里面index.html内容,添加端口标识。

root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-81
root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-82

技术分享图片

结构:

技术分享图片

 1.2nginx配置,新增两个server:配置监听端口为 81 和 82

    server {
        listen       81;
        server_name  localhost;
        location / {
            root   html-81;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    server {
        listen       82;
        server_name  localhost;
        location / {
            root   html-82;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

1.3测试

访问192.168.78.131:81 和 192.168.78.131:82

 技术分享图片

 技术分享图片 

2 基于域名的虚拟主机配置

这边我们使用SwitchHosts修改hosts文件

技术分享图片

 1.1将html文件复制两份,分别命名为html-www、html-manage,并且修改文件夹里面index.html内容,添加域名文件标识。

root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-www
root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-manage

结构

技术分享图片

1.2nginx配置(新增两个server:配置server_name分别为www.yatces.com 和 manage.yatces.com

    server {
        listen       80;
        server_name  manage.yatces.com;
        location / {
            root   html-www;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    server {
        listen       80;
        server_name  www.yatces.com;
        location / {
            root   html-www;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

1.3测试(访问 www.yatces.com 和 manage.yatces.com)

 技术分享图片

技术分享图片

3 nginx的反向代理和负载均衡到 tomcat

3.1先安装jdk 环境,新增tomcat实例

新增两个tomcat实例tomcat1和Tomcat,端口分别是 8081 和 8082 。

技术分享图片

修改两个tomcat实例的配置文件:conf/server.xml中的端口信息(每个实例都要修改三个位置的port,防止端口冲突

技术分享图片

技术分享图片

技术分享图片

 

分别修改webapps/ROOT/index.jsp,加上端口,以便识别。

 技术分享图片

分别测试tomcat是否成功:

http://192.168.78.131:8081/

技术分享图片

http://192.168.78.131:8082/

 技术分享图片

3.2配置Nginx

修改本地hosts文件

技术分享图片

 

反向代理配置

修改nginx.conf(在http目录下添加 upstream 和一个server)

    upstream tomcatserver1{
        server 192.168.78.131:8081;
    }

    server {
        listen       80;
        server_name  8081.yatces.com;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            proxy_pass http://tomcatserver1;
            index  index.html index.htm;
        }
    }

访问 http://8081.yatces.com/

技术分享图片

 

 

负载均衡配置

    upstream tomcatserver2{
        server 192.168.78.131:8081 weight=2; #weight为权重,越高处理的请求越多
        server 192.168.78.131:8082 weight=1;
    }

    server {
        listen       80;
        server_name  8082.yatces.com;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            proxy_pass http://tomcatserver2;
            index  index.html index.htm;
        }
   }

访问同一个地址,出现两种情况

http://8082.yatces.com/

技术分享图片

技术分享图片

 

nginx的虚拟主机、反向代理、负载均衡配置完成。

 

nginx配置虚拟主机、反向代理和负载均衡

原文:https://www.cnblogs.com/Yatces/p/11389530.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!