博客列表 >nginx if指令 和 常用的判断条件

nginx if指令 和 常用的判断条件

有什么是忘不了的的博客
有什么是忘不了的的博客原创
2020年05月25日 17:19:176098浏览

**if指令和判断**

在nginx中使用if(),主要的是条件语句怎么写。

if($slow){

}

判断语句。

`[ = | != | ~ | ~* | !~ | !~* ] `

`=`:等于

`!=`:不等于

`~`:正则区分大小写匹配

`~*`:正则不区分大小写匹配

`!~`:正则区分大小写匹配失败的时候。

`!~*`:正则区分大小写匹配失败的时候。

*例子*

if ($request_method = POST){

#如果请求为post

}

if ($request_method ~* P* ){

#如果请求为以p开头的请求 如post 、put

}

`[ -f | !-f | -d | !-d | -e | !-e | -x | !-x ]`

`-f`:请求的文件存在为true

`!-f`:请求的文件不存在,但该文件的目录存在为true

`-d`:请求的目录存在为true

`!-d`:请求的目录不存在,但该目录的上级目录存在为true

`-e`:当请求的文件或目录存在时true

`!-e`:如果请求的文件和改文件所在路径上的目录都不存在,为true

`-x`:请求的文件可执行,为true

`!-x`:请求的文件不可执行,为true


*例子*

if (-f $reque_filename){

#文件存在

}

if (!-f $reque_filename){

#文件不存在

}


*break*

遇到break就跳出,后面的指令不在执行

if (!-f $reque_filename){

set $id = 1; #有效的指令

break;

limit_rate 10k; #无效的指令

}

*return*

完成对请求的处理。直接向客户端返回响应状态码。

return code URL ;

return [text];

`code`: 返回给客户端的HTTP状态码

`URL`:返回给客户端的URL地址

`text`:返回给客户端的响应体内容,支持变量。

*set*

设置变量

set $id = 2


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议