zoukankan      html  css  js  c++  java
  • Nginx 负载平衡 支持域名转发的方法

    转自:http://chazor.org/html/74.html

    在官方提供的LoadBalanceExample基础上,修改

    http {
    upstream myproject {
    server 127.0.0.1:8000 weight=3;
    server 127.0.0.1:8001;
    server 127.0.0.1:8002;
    server 127.0.0.1:8003;
    }

    server {
    listen 80;
    server_name www.domain.com;
    location / {
    proxy_pass http://myproject;
    }
    }
    }

    加几行

    http {
    upstream myproject {
    server 127.0.0.1:8000 weight=3;
    server 127.0.0.1:8001;
    server 127.0.0.1:8002;
    server 127.0.0.1:8003;
    }

    server {
    listen 80;
    server_name www.domain.com;
    location / {
    proxy_store off;
    proxy_redirect off;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $http_host;
    proxy_pass http://myproject;
    }
    }
    }

    在Nginx中的默认Proxy是只能对后面Real Server做端口转发的,而不能做域名转发。如果想使用Nginx对后端是同一IP、同一端口 转发不同的域名则需要配置Nginx Proxy。

        这个是因为默认情况下:
        proxy_set_header Host $proxy_host;

        这样就等于前端输入域名后到nginx这里直接转换成IP进行转发了。
        于是我们需要修改proxy_set_header的参数。

        proxy_set_header Host $http_host;

        下面这个例子中backend1权重为5,其他默认为1,最大失效次数3次,如果30秒内没有响应就认为是失效了。

        upstream lb  {
          server cache.opencfg.com weight=5;
          server app.opencfg.com max_fails=3  fail_timeout=30s;
        }

        server {
           listen 80;
           server_name  www.opencfg.com;
           location  /     {
             proxy_store off;
             proxy_redirect  off;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header Host $http_host;
             proxy_pass http://lb; 
           }
        }

  • 相关阅读:
    iOS 地图与定位开发系列教程(一)
    opencv 之 transformation
    the brain 8.0
    vs中添加库文件WinMM.Lib
    JAVA简单性能检测
    【转帖】一套鼠标控制2台电脑
    Synergy工具一套键盘鼠标连接多台机器
    文件夹下所有文件及子文件夹将文件名小写
    捕捉Facebook Like的数据
    按键精灵的网页自动化测试
  • 原文地址:https://www.cnblogs.com/ayao/p/nginx.html
Copyright © 2011-2022 走看看