最近在学习Nginx搭建负载均衡系统,感觉系统部署方式的思路瞬间开阔了很多。

负载均衡服务器的后端服务器上各自有一套功能相同的WEB管理系统,主要作用是方便的对各自服务器的IIS站点及服务器防火墙测量进行调整,在没有上Nginx之前,一直都是各自使用IP:Port的方式访问,虽然时间长了IP也都能记得住,毕竟感觉很low,如果也能使用域名进行访问就好了。虽然也可以直接解析两个域名到对应的服务器上,可惜后端服务器的这两套管理系统毕竟是非80端口的方式部署,既然解析了域名,也仅仅是变成了domain:Port的方式,并没有变得更简洁。

但是有了Nginx就完全不同了(HAProxy也可以达到同样的目的)。

※ 负载均衡环境

Nginx 192.168.6.100

Ser02 192.168.6.102

Ser03 192.168.6.103

泛域名解析 *.mydomain.com 指向 192.168.6.100

管理系统分别部署在 102/103 服务器的 803 端口

※ 直接匹配后端服务器 IP

    server {
listen 80;
server_name ~^fw(?<serip>.+).mydomain.com$; location / {
proxy_pass http://192.168.6.$serip:803;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

这样可以使用 http://fw102.mydomain.com 访问 192.168.6.102 服务器上的管理系统,使用 http://fw103.mydomain.com 访问 192.168.6.103 服务器上的管理系统。

※ 匹配后端服务器组编号

    server {
listen 80;
server_name ~^fw(?<serno>.+).mydomain.com$; location / {
proxy_pass http://backser_$serno;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

后端服务器组

    upstream backser_02 {
ip_hash;
server 192.168.6.102:803;
} upstream backser_03 {
ip_hash;
server 192.168.6.103:803;
}

这样可以使用 http://fw02.mydomain.com 访问 192.168.6.102 服务器上的管理系统,使用 http://fw03.mydomain.com 访问 192.168.6.103 服务器上的管理系统。

Nginx server_name 正则泛域名反向代理两例的更多相关文章

  1. nginx二级域名反向代理

    nginx二级域名反向代理 添加两个开发测试的域名 test.xxx.com :8088 testmobile.xxx.com: 8089 内网地址:127.0.0.1 外网地址:127.0.0.1 ...

  2. Nginx实现简易泛域名CDN节点

    如何使用Nginx泛域名解析+反向代理+静态资源缓存呢? 安装nginx,安装过程不再赘述,记得带上pcre.gzip.sub.status这几个模块,另外如果想开通在线清理缓存功能,需要安装ngx_ ...

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

    为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰. worker_processes ; events { worker_connections ; } h ...

  4. nginx安装与配置3-反向代理两台

    1.nginx 反向代理 两台tomcat 2.8080.8081 启动tomcat 记住每个tomcat都有两个端口不要出现tomcat端口占用情况 3.启动项目访问,不报错可以访问 4.在每个to ...

  5. Nginx服务器部署 负载均衡 反向代理

    Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...

  6. Centos 7 上使用nginx为Node.js配置反向代理时错误:(13: Permission denied) while connecting to upstream

    错误来源:Centos 7 上使用nginx为Node.js配置反向代理时产生(13: Permission denied) while connecting to upstream的错误 nginx ...

  7. 使用Nginx对.NetCore站点进行反向代理

    前言 之前的博客我已经在Linux上部署好了.NetCore站点且通过Supervisor对站点进行了进程守护,同时也安装好了Nginx.Nginx的用处非常大,还是简单说下,它最大的功能就是方便我们 ...

  8. Nginx反向代理两个tomcat服务器

    第一步,在Linux上安装两个tomcat,修改好端口号后,启动起来. 第二步,配置本地的DNS解析,即修改host文件: 第三步,配置Nginx配置文件 反向代理的配置虚拟主机配置差不多也要配置虚拟 ...

  9. nginx for windows 配置多域名反向代理

    调试了很久...哦耶 共享出来吧 其实 nginx反向代理同一ip多个域名,给header加上host就可以了 upstream test.test.cn {        server   119. ...

随机推荐

  1. 《Java设计模式》之訪问者模式

    訪问者模式是对象的行为模式.訪问者模式的目的是封装一些施加于某种数据结构元素之上的操作.一旦这些操作须要改动的话,接受这个操作的数据结构则能够保持不变. 分派的概念 变量被声明时的类型叫做变量的静态类 ...

  2. [IT学习]跟阿铭学linux(第3版)

    1.安装Linux在虚拟化平台上 Windows Vmware Workstation,需要在本机上打开CPU对虚拟化的支持.Virtualization Cent OS7 已成功安装. 2.http ...

  3. [办公应用]让WORD自动显示到四级目录

    一般情况下,word的目录默认显示到三级目录.如果需要显示到四级目录,你会怎么操作呢? 只要按下图所示,单击“插入”-“引用”-“索引和目录” 然后单击“目录”选项卡,将“显示级别”处的3改为4即可. ...

  4. Django模板语言(一)

    1,Django模板语言 1.1>基础语法:1.1.1,变量相关:{{ 变量名 }},1.1.2,逻辑相关{% ... %} 在Django模板语言中按此语法使用:{{ 变量名 }},当模板引擎 ...

  5. mongo04---基本查询

    核心: mongod: 数据库核心进程 mongos: 查询路由器,集群时用 mongo: 交互终端(客户端) 二进制导出导入: mongodump:导出bson数据 mongorestore: 导入 ...

  6. JFreeChart教程(一)(转)

    JFreeChart教程(一) 分类: java Component2007-05-31 15:53 35268人阅读 评论(30) 收藏 举报 jfreechartimportdataset图形ap ...

  7. Hibernate、Spring和Struts2工作原理

    Hibernate.Spring和Struts2工作原理 博客分类: Java 基础 工作HibernateSpringMVCStruts  Hibernate.Spring和Struts2工作原理  ...

  8. Managing SQLite Database

    Approach #1: Use a Singleton to Instantiate the SQLiteOpenHelper Declare your database helper as a s ...

  9. Ubuntu 安装MTP驱动访问安卓设备(转载)

    转自:http://www.ipython.me/ubuntu/how-to-connect-kindle-with-ubuntu.html 1.安装MTP工具集: mr_liu@i-it:~$ su ...

  10. python pip安装第三方模块

    一.pip工具使用 安装windows版本python,自带pip工具.2者路径相同. 如果设置了环境路径,可以直接在命令提示符窗口下尝试运行pip.如果没有设置环境路径,可以先cd命令到pip工具的 ...