nginx if 判断

一、if语句中的判断条件(nginx)

1、正则表达式匹配:

==:等值比较;

~:与指定正则表达式模式匹配时返回“真”,判断匹配与否时区分字符大小写;

~*:与指定正则表达式模式匹配时返回“真”,判断匹配与否时不区分字符大小写;

!~:与指定正则表达式模式不匹配时返回“真”,判断匹配与否时区分字符大小写;

!~*:与指定正则表达式模式不匹配时返回“真”,判断匹配与否时不区分字符大小写;

2、文件及目录匹配判断:

-f, !-f:判断指定的路径是否为存在且为文件;

-d, !-d:判断指定的路径是否为存在且为目录;

-e, !-e:判断指定的路径是否存在,文件或目录均可;

-x, !-x:判断指定路径的文件是否存在且可执行;

server {
listen       80;
server_name  test.enjoy.com;

#set $flag 0;
##if ($flag = 0) {
#    return 501;
#}

#客户端请求的完整请求路径
#if ( $request_uri ~* /(.*).php ) {                                        
#    return 502;
#}

if (!-f $request_filename) {
        return 414;
}

#禁止chrome访问
#if ($http_user_agent ~ Chrome) {
#        return 503;
#}

location /loct {
    return 401;
}
location / {
    #if
    root html;
    index index.html;
}

}
————————————————
版权声明:本文为CSDN博主「pf1234321」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/pf1234321/article/details/83072550

原文地址:https://www.cnblogs.com/whm-blog/p/14865856.html