美文网首页
一台机器上配置代理及动静分离 负载均衡

一台机器上配置代理及动静分离 负载均衡

作者: Oooyzx | 来源:发表于2019-10-10 11:46 被阅读0次

    基于nginx 的在一台机器上配置反向代理及实现动静分离 负载均衡功能:

    1.配置虚拟IP

      ifconfig enp0s25:1 10.0.13.100
      ifconfig enp0s25:2 10.0.13.101
      ifconfig enp0s25:3 10.0.13.102
      ifconfig enp0s25:4 10.0.13.103
    

    2.在/etc/nginx/conf.d/创建两个.conf文件

    用来写处理动静文件的服务器配置文件
    (分别为 static.conf 和 move.conf)

    • 静态:
    vim static.conf
    
    #在static.conf中写入如下内容:
    server {
       listen 10.0.13.102:80;
       server_name www.static_html.com;
       access_log   /var/log/www.static_html.com.log main;
       error_log    /var/log/www.static_html.com.error.log;
       set_real_ip_from 10.0.13.102;
       location / {
            root  /usr/share/nginx/static;
            index index.html;
           }
    }
    
    server {
       listen 10.0.13.103:80;
       server_name www.static_html1.com;
       access_log   /var/log/www.static_html1.com.log main;
       error_log    /var/log/www.static_html1.com.error.log;
       set_real_ip_from 10.0.13.103;
       location / {
            root  /usr/share/nginx/static1;
            index index.html;
           }
    }
    
    
    • 动态:
    vim move.conf
    
    #在move.conf中写入如下内容:
    server {
       listen 10.0.13.100:80;
       server_name www.move_html.com;
       access_log   /var/log/www.move_html.com.log main;
       error_log    /var/log/www.move_html.com.error.log;
       set_real_ip_from 10.0.13.100;
       location / {
            root  /usr/share/nginx/move;
            index index.php;
           }
    }
    
    server {
       listen 10.0.13.101:80;
       server_name www.move_html1.com;
       access_log   /var/log/www.move_html1.com.log main;
       error_log    /var/log/www.move_html1.com.error.log;
       set_real_ip_from 10.0.13.101;
       location / {
            root  /usr/share/nginx/move1;
            index index.php;
           }
    }
    
    

    3. 在/usr/share/nginx/下创建四个文件夹

    分别为static、static1、move、move1用来放动静网页 并将网页内容+ip 写入对应的index文件中 在轮询时加以区别显示

    mkdir static
    echo 'static html 10.0.13.102'>static/index.html
    mkdir static1
    echo 'static html 10.0.13.103'>static1/index.html
    ##############################################
    mkdir move
    echo 'move html 10.0.13.100'>move/index.php
    mkdir move1
    echo 'move html 10.0.13.101'>move1/index.php
    

    4.在/etc/nginx/conf.d/下创建proxy.cof文件

    vim proxy.conf
    

    在代理文件中写入配置内容:

    #设置处理动静轮询的虚拟ip:
    upstream moveweb {
        server 10.0.13.100 ; 
        server 10.0.13.101 ;
    }
    upstream staticweb {
        server 10.0.13.102 weight=1;   #可设置一定的权重
        server 10.0.13.103 weight=2;
    }
    server {
       listen 10.0.122.38:80;    #真实物理机ip
       server_name www.proxy.com;
       root         /usr/share/nginx/proxy;
       access_log   /var/log/www.static.com.log main;
       error_log    /var/log/www.static.com.error.log;
       location ~ .*\.(html|gif|jpg|png|bmp|swf|jpeg)$ { #正则匹配静态页面,以后缀可区分
                  proxy_pass http://staticweb;
                  proxy_set_header Host $http_host;
                  proxy_set_header X-Real-IP $remote_addr;
                  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                  proxy_set_header X-Forwarded-Proto $scheme;
                  proxy_set_header X-NginX-Proxy true;
                  proxy_connect_timeout 30;
                  proxy_send_timeout 60;
                  proxy_read_timeout 60;
                  proxy_buffering on;
                  proxy_buffer_size 32k;
                  proxy_buffers 4 128k;
                  proxy_busy_buffers_size 256k;
                  proxy_max_temp_file_size 256k;
           }
       location ~ \.php$ {    #正则匹配动态页面,以后缀可区分
                  proxy_pass http://moveweb;
                  proxy_set_header Host $http_host;
                  proxy_set_header X-Real-IP $remote_addr;
                  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                  proxy_set_header X-Forwarded-Proto $scheme;
                  proxy_set_header X-NginX-Proxy true;
                  proxy_connect_timeout 30;
                  proxy_send_timeout 60;
                  proxy_read_timeout 60;
                  proxy_buffering on;
                  proxy_buffer_size 32k;
                  proxy_buffers 4 128k;
                  proxy_busy_buffers_size 256k;
                  proxy_max_temp_file_size 256k;
           }
    
    
    }
    
    
    

    相关文章

      网友评论

          本文标题:一台机器上配置代理及动静分离 负载均衡

          本文链接:https://www.haomeiwen.com/subject/nhcgpctx.html