Nginx server_name 正则泛域名反向代理两例
最近在学习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 正则泛域名反向代理两例的更多相关文章
- nginx二级域名反向代理
nginx二级域名反向代理 添加两个开发测试的域名 test.xxx.com :8088 testmobile.xxx.com: 8089 内网地址:127.0.0.1 外网地址:127.0.0.1 ...
- Nginx实现简易泛域名CDN节点
如何使用Nginx泛域名解析+反向代理+静态资源缓存呢? 安装nginx,安装过程不再赘述,记得带上pcre.gzip.sub.status这几个模块,另外如果想开通在线清理缓存功能,需要安装ngx_ ...
- nginx配置虚拟主机、反向代理和负载均衡
为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰. worker_processes ; events { worker_connections ; } h ...
- nginx安装与配置3-反向代理两台
1.nginx 反向代理 两台tomcat 2.8080.8081 启动tomcat 记住每个tomcat都有两个端口不要出现tomcat端口占用情况 3.启动项目访问,不报错可以访问 4.在每个to ...
- Nginx服务器部署 负载均衡 反向代理
Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...
- 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 ...
- 使用Nginx对.NetCore站点进行反向代理
前言 之前的博客我已经在Linux上部署好了.NetCore站点且通过Supervisor对站点进行了进程守护,同时也安装好了Nginx.Nginx的用处非常大,还是简单说下,它最大的功能就是方便我们 ...
- Nginx反向代理两个tomcat服务器
第一步,在Linux上安装两个tomcat,修改好端口号后,启动起来. 第二步,配置本地的DNS解析,即修改host文件: 第三步,配置Nginx配置文件 反向代理的配置虚拟主机配置差不多也要配置虚拟 ...
- nginx for windows 配置多域名反向代理
调试了很久...哦耶 共享出来吧 其实 nginx反向代理同一ip多个域名,给header加上host就可以了 upstream test.test.cn { server 119. ...
随机推荐
- 使用HD/IDE层的ioctl接口获取磁盘容量get_hdd_max_sector
利用HD/IDE layer的ioctl函数接口获取HD/IDE的磁盘容量.HDIO_DRIVE_TASK 能发出訪问LBA地址的命令.但不能读写数据. #include <stdio.h&g ...
- C项目案例实践(0)-语言基础
1.C语言数据类型 所谓数据类型是按被定义变量的性质.表示形式.占据存储空间的多少.构造特点来划分的.C中数据类型可分为基本数据类型.构造数据类型.指针类型.空类型4大类,结构如图: (1)基本数据类 ...
- mysql11---主键普通全文索引
.1主键索引添加 当一张表,把某个列设为主键的时候,则该列就是主键索引 create table aaa (id int unsigned primary key auto_increment , n ...
- JavaScript基础简要
JavaScript 引用外部js : <script src="2.js"type="text/javascript"></scri ...
- Powershell 常见问题
unapproved verbs WARNING: The names of some imported commands from the module 'todo' include unappro ...
- 使用C#开发HTTP服务器系列之Hello World
各位朋友大家好,我是秦元培,欢迎大家关注我的博客.从今天起,我将开始撰写一组关于HTTP服务器开发的系列文章.我为什么会有这样的想法呢?因为人们对Web技术存在误解,认为网站开发是Web技术的全部.其 ...
- I.MX6 简单电路模拟USB设备的插入
/**************************************************************************** * I.MX6 简单电路模拟USB设备的插入 ...
- bzoj 3481 DZY loves math —— 反演+Pollard_rho分解质因数
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3481 推式子:xy % P = Q 的个数 由于 0 <= x,y < P,所以 ...
- get与post提交方式区别?
1.get <!--表单数据作为HTTP GET请求发送给action 规定的URL,并将数据附加在URL之后,由客户端直接发送给服务器.表单数据不能太长,也不能含有非ASCII码的字符--&g ...
- Pascal之计算小系统
program Project16; {$APPTYPE CONSOLE} VAR n,i,k,score,b,a:integer; answer,c:real; ch:char; Begin rep ...