在上一篇文章:《Nginx if语句加正则表达式实现字符串截断》中, 我们介绍过了使用if来进行截断字符串的用法, 这次我们来了解下if的逻辑用法:
什么是逻辑用法呢, 就程序中的and、or关系, 就叫做逻辑了.
NGINX支持if的 and 与 or 或者 && 与 || 吗?
答案是No.
当你尝试这样配置, 重载nginx时, nginx会报出错误
复制代码 代码如下:
location = /test/ {
default_type text/html;
set $b 0;
if ( $remote_addr != '' && $http_x_forwarded_for != '' ){
set $b '1';
}
echo $b;
}
[root@test-vm ~]# /usr/local/nginx/sbin/nginx -t
nginx: [emerg] invalid condition "$remote_addr" in /usr/local/nginx/conf/nginx.conf:60
configuration file /usr/local/nginx/conf/nginx.conf test failed
那么我们应该怎样来实现and 和or的逻辑关系呢?
复制代码 代码如下:
location = /test_and/ {
default_type text/html;
set $a 0;
set $b 0;
if ( $remote_addr != '' ){
set $a 1;
}
if ( $http_x_forwarded_for != '' ){
set $a 1$a;
}
if ( $a = 11 ){
set $b 1;
}
echo $b;
}
location = /test_or/ {
default_type text/html;
set $a 0;
set $b 0;
if ( $remote_addr != '' ){
set $a 1;
}
if ( $http_x_forwarded_for != '' ){
set $a 1;
}
if ( $a = 1 ){
set $b 1;
}
echo $b;
}
Nginx,IF,AND,OR
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 群星.1996-风月电影原声带【滚石】【WAV+CUE】
- Blast Slam S1参赛名单出炉:XG被直邀
- 《英雄联盟》Doinb想让Tian当教练:世纪大和解?
- 《忆蚀》Subliminal:揭秘后室之谜,路知行献声Weplay文化展
- 那英《征服NEWXRCD台湾版》日本压制[WAV+CUE]
- 群星《金曲百分百上》3CD(香港版)[WAV+CUE]
- 刘欢《雨中的树(新歌加精选)2CD》德国HD24K金碟[WAV+CUE]
- 郑源 《世间情歌》6N纯银SQCD[WAV+CUE][1G]
- 群星《粤潮2HQII》头版限量编号[低速原抓WAV+CUE][991M]
- 群星《2023好听新歌21》十倍音质 U盘音乐[WAV分轨][1G]
- 《热血传奇》双11感恩回馈 超值狂欢30天
- 原神5.2版本活动汇总 5.2版本活动有哪些
- 张敬轩.2010-NO.ELEVEN【环球】【WAV+CUE】
- 黄丽玲.2006-失恋无罪【艾回】【WAV+CUE】
- 阿达娃.2024-Laluna【W8VES】【FLAC分轨】