html if语句多条件,nginx if多条件判断的实现
if判断本身不支持多条件判断,用不了 && 或者|| 这种逻辑运算,而且if也不支持嵌套。
可以通过set变量来迂回实现。
比如这里我要实现访问a.rootop.org跳转到匹配子域名到指定的html页面。
dns和nginx已经配置了泛域名
实现效果:
a.rootop.org -> rootop.org/pages/a.html
b.rootop.org -> rootop.org/pages/b.html
但是这里要排除www.rootop.org的跳转
server
{
listen 80;
server_name rootop.org www.rootop.org *.rootop.org;
root html;
# 子域名跳转指定html页面
# 先设置个变量
set $subdomain "";
# 正则获取三级域(也就是主机名)
if ($http_host ~* "^(.*)\.rootop\.org$")
{
set $subdomain $1;
}
# 排除www
if ($subdomain = "www")
{
set $subdomain "";
}
# 除www外的实现跳转
if ($subdomain != "")
{
# 注意加上$scheme,如果是rootop.org/pages/xxx.html,则会认为是在域名后面加了个目录地址。
return 301 $scheme://rootop.org/pages/$subdomain.html;
}
}
如果想反过来实现也可以
# html页面跳转子域名
if ($uri ~* ".*/pages/(.*)\.html")
{
return 301 $scheme://$1.rootop.org;
}
专注于 服务器运维与web架构
E-mail:venus#rootop.org
html if语句多条件,nginx if多条件判断的实现相关推荐
- python和循环语句_Python 小白零基础入门 -- 条件语句和循环语句
Python 小白零基础入门 -- 条件语句和循环语句 点击上方 "Python 读数", 选择 "星标" 公众号 重磅干货, 第一时间送达 Python 零基 ...
- linux while 多个条件,Shell语法—— while 条件语句
while 循环语句 while 循环语句语法格式为: while < 条件表达式 > do 指令 done 有关脚本运行的相关用法 命令 说明 sh file.sh & 把 fi ...
- python的if else 语句使得循环停止的_Python条件语句和循环语句
条件和条件语句 1. 有条件地执行和 if 语句 真值可合并,至于如何合并稍后再讲,先来看看真值可用来做什么.请尝试运行下面的脚本: name = input('What is your name? ...
- Mysql SQL语句执行更新或者插入添加条件判断
Mysql SQL语句执行更新或者插入添加条件判断 – 更新操作 – INSERT INTO materials (ID,Name,Remaining,Total) VALUES (1,'SolidW ...
- oracle or条件后 排序,WHERE条件和排序
一.条件简介 了解条件的一般形式 最普通的条件如下形式: gyj@OCM> Select * from t1 where name='gyj2'; ID NAME SALAR ...
- makefile ifneq多个判断条件_Python基础语法——条件判断
条件判断是根据一个或多个条件的结果来进行判断的. 例如一个自动调温器需要不停地检测温度,只要温度低于某个值,就会打开加热,而温度高于某个值,就要打开降温.这里需要将温度值进行比较,然后做出判断,有一个 ...
- 写一个“特殊”的查询构造器 - (四、条件查询:复杂条件)
复杂的条件 在 SQL 的条件查询中,不只有 where.or where 这些基本的子句,还有 where in.where exists.where between 等复杂一些的子句.而且即使是 ...
- count 有条件 mysql_mysql 不同条件count ,多条件count()
create table abc(A int,B int) Select A,count(B) as total from ABC group by A Select A,count(B) as to ...
- java线程条件变量_使用条件变量(多线程笔记)
条件变量属性: 使用条件变量可以以原子方式阻塞线程,知道某个特定条件为真为止.条件变量始终与互斥锁一起使用. 使用条件变量,线程可以以原子方式阻塞,知道满足某个条件为止.对掉件的测试时在互斥锁的保护下 ...
最新文章
- 南京廖华计算机二级考试答案,计算机二级习题答案
- JQuery笔记(二)jq常用方法animate()
- PgwSlideshow-基于Jquery的图片轮播插件
- hive 语法检查_升级Hive3处理语义和语法变更
- AWS Elemental推出新一代基于云的直播视频服务
- python深浅拷贝的底层理解_理解python中的深拷贝与浅拷贝
- CDH 6.x 安装 Phoenix 服务
- jemalloc/jemalloc.h: No such file or directory
- Javascript学习之创建对象
- tcpip路由技术卷一_计算机网络题库考(2020.9.10晚18.320.30 北京卷)
- springboot旅游景区景点购票系统毕业设计毕设作品开题报告开题答辩PPT
- iView admin网站后台管理系统模板v2.5.0
- 2.2.9 12306火车订票验证码处理
- AdMob(app内嵌广告)使用入门
- 32位系统为什么又叫x86系统呢?
- 新手学习嵌入式开发要学什么
- 同是IT小小鸟——《我是一只IT小小鸟》读书笔记
- Win11设备管理器在哪里打开?
- 2022网易笑招4.21笔试题
- Spring Boot集成支付宝(最新版SDK)—— 手机支付