Nginx URL重写(rewrite)配置及信息详解
1)if判断指令
语法为if(condition){…} #对给定的条件condition进行判断。
如果为真,大括号内的rewrite指令将被执行,if条件(conditon)可以是如下任何内容: a:当表达式只是一个变量时,如果值为空或任何以0开头的字符串都会当做false,其他情况为true。 b: 直接比较变量和内容时,使用 = 或!= c: 正则表达式匹配,*不区分大小写的匹配,!和!*反之。
注意:使用正则表达式字符串一般不需要加引号,但是如果含有右花括号“}”或者分号“;”字符时,必须要给整个正则表达式加引号
其他指令:
-f和!-f用来判断请求文件是否存在
-d和!-d用来判断请求目录是否存在
-e和!-e用来判断是请求的文件或者目录否存在
-x和!-x用来判断请求的文件是否可执行
例子:
if (-f $request_filename){
… #判断请求的文件是否存在,存在就执行这里面的代码块
}