更新时间:2021-08-27 来源:黑马程序员 浏览量:
if指令该指令用来支持条件判断,并根据条件判断结果选择不同的Nginx配置。
| 语法 | if (condition){...} |
| 默认值 | — |
| 位置 | server、location |
condition为判定条件,可以支持以下写法:
1. 变量名。如果变量名对应的值为空字符串或"0",if都判断为false,其他条件为true。
if ($param){
}
2. 使用"="和"!="比较变量和字符串是否相等,满足条件为true,不满足为false
if ($request_method = POST){
return 405;
}
注意:此处和Java不太一样的地方是字符串不需要添加引号,并且等号和不等号前后到需要加空格。
3. 使用正则表达式对变量进行匹配,匹配成功返回true,否则返回false。变量与正则表达式之间使用"~","~*","!~","!~*"来连接。
"~"代表匹配正则表达式过程中区分大小写,
"~*"代表匹配正则表达式过程中不区分大小写
"!~"和"!~*"刚好和上面取相反值,如果匹配上返回false,匹配不上返回true
if ($http_user_agent ~ MSIE){
#$http_user_agent的值中是否包含MSIE字符串,如果包含返回true
}
注意:正则表达式字符串一般不需要加引号,但是如果字符串中包含"}"或者是";"等字符时,就需要把引号加上。
4. 判断请求的文件是否存在使用"-f"和"!-f",
if (-f $request_filename){
#判断请求的文件是否存在
}
if (!-f $request_filename){
#判断请求的文件是否不存在
}
5. 判断请求的目录是否存在使用"-d"和"!-d"
6. 判断请求的目录或者文件是否存在使用"-e"和"!-e"
7. 判断请求的文件是否可执行使用"-x"和"!-x"
将本页面链接发送给QQ:435946716,免费获取上面课程全套视频、笔记和源码。
猜你喜欢:
毕业32个工作日,平均薪资11147元,就业率95%,广州黑马AI智能应用开发(Java)学科20250326班
2026-03-05黑马程序员2025全国就业数据发布:全学科平均就业率92.07%,AI开发类就业平均薪资达11869.67元。
2026-03-05黑马全国校区齐开班!场面太太太壮观了!
2026-03-03AI智能应用开发课程紧贴企业刚需,全程高效学习,直达中高级软件开发水平
2026-02-28风口正劲!黑马程序员又一AI智能应用开发班毕业当天100%就业!
2026-02-2722岁学鸿蒙,拿下人生第一桶金:25届毕业生,华为鸿蒙创新赛2等奖得主
2026-01-08