博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Nginx 负载平衡 支持域名转发的方法
阅读量:5143 次
发布时间:2019-06-13

本文共 1402 字,大约阅读时间需要 4 分钟。

转自: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; 
       }
    }

转载于:https://www.cnblogs.com/ayao/p/nginx.html

你可能感兴趣的文章
数据库中字段类型对应C#中的数据类型
查看>>
根据Dockerfile创建hello docker镜像
查看>>
ControlTemplate in WPF —— Button
查看>>
cesharp 完美支持flash
查看>>
中国古乐
查看>>
jQuery的select相关操作
查看>>
同一个UILabel使用不同的大小和颜色
查看>>
github项目上传管理
查看>>
洛谷 P1101-题解
查看>>
MD5加密
查看>>
【nodejs笔记1】配置webstorm + node.js +express + mongodb开发博客的环境
查看>>
进程、线程、应用程序之间的关系
查看>>
Shiro入门 - 通过自定义Realm连数数据库进行授权
查看>>
C语言复习笔记-17种小算法-解决实际问题
查看>>
面向过程思想理解:
查看>>
20171020java学习总结——execl 批量导入
查看>>
如何自绘树形控件(QQ好友列表)
查看>>
web异步开发——ajax
查看>>
通过修改VHD文件的位置来提升性能
查看>>
将WPF版的弹幕播放器给优化了一下
查看>>