• 使用正则表达式对变量进行匹配,匹配成功返回true,否则返回false。变量与正则表达式之间使用"~","~*","!~","!~*"来连接。

    "~"代表匹配正则表达式过程中区分大小写,

    "~*"代表匹配正则表达式过程中不区分大小写

    "!~"和"!~*"刚好和上面取相反值,如果匹配上返回false,匹配不上返回true

if ($http_user_agent ~ MSIE){#$http_user_agent的值中是否包含MSIE字符串,如果包含返回true
}

注意:正则表达式字符串一般不需要加引号,但是如果字符串中包含"}"或者是";"等字符时,就需要把引号加上。

  • 判断请求的文件是否存在使用"-f"和"!-f",

    当使用"-f"时,如果请求的文件存在返回true,不存在返回false。

    当使用"!f"时,如果请求文件不存在,但该文件所在目录存在返回true,文件和目录都不存在返回false,如果文件存在返回false

if (-f $request_filename){#判断请求的文件是否存在
}
if (!-f $request_filename){#判断请求的文件是否不存在
}
  1. 判断请求的目录是否存在使用"-d"和"!-d",

    当使用"-d"时,如果请求的目录存在,if返回true,如果目录不存在则返回false

    当使用"!-d"时,如果请求的目录不存在但该目录的上级目录存在则返回true,该目录和它上级目录都不存在则返回false,如果请求目录存在也返回false.

  2. 判断请求的目录或者文件是否存在使用"-e"和"!-e"

    当使用"-e",如果请求的目录或者文件存在时,if返回true,否则返回false.

    当使用"!-e",如果请求的文件和文件所在路径上的目录都不存在返回true,否则返回false

  3. 判断请求的文件是否可执行使用"-x"和"!-x"

    当使用"-x",如果请求的文件可执行,if返回true,否则返回false

    当使用"!-x",如果请求文件不可执行,返回true,否则返回false

Nginx的rewrite之if指令(二)相关推荐

  1. Nginx的rewrite之set指令

    set指令 该指令用来设置一个新的变量. 语法 set $variable value; 默认值 - 位置 server.location.if variable:变量的名称,该变量名称要用" ...

  2. Nginx的rewrite之break指令

    break指令 该指令用于中断当前相同作用域中的其他Nginx配置.与该指令处于同一作用域的Nginx配置中,位于它前面的指令配置生效,位于后面的指令配置无效. 语法 break; 默认值 - 位置 ...

  3. Nginx的rewrite之return指令

    return指令 该指令用于完成对请求的处理,直接向客户端返回响应状态代码.在return后的所有Nginx配置都是无效的. 语法 return code [text];<br/>retu ...

  4. Nginx的rewrite之if指令(一)

    if指令 该指令用来支持条件判断,并根据条件判断结果选择不同的Nginx配置. 语法 if (condition){...} 默认值 - 位置 server.location condition为判定 ...

  5. Nginx的Gzip模块配置指令(二)

    gzip_comp_level指令:该指令用于设置Gzip压缩程度,级别从1-9,1表示要是程度最低,要是效率最高,9刚好相反,压缩程度最高,但是效率最低最费时间. 语法 gzip_comp_leve ...

  6. Nginx的rewrite之rewrite_log指令

    rewrite_log指令 该指令配置是否开启URL重写日志的输出功能. 语法 rewrite_log on|off; 默认值 rewrite_log off; 位置 http.server.loca ...

  7. Nginx模块Lua-Nginx-Module学习笔记(二)Lua指令详解(Directives)

    源码地址:https://github.com/Tinywan/Lua-Nginx-Redis Nginx与Lua编写脚本的基本构建块是指令. 指令用于指定何时运行用户Lua代码以及如何使用结果. 下 ...

  8. Nginx的rewrite应用

    Rewrite主要的功能是实现URL重写,Nginx 的 Rewrite 规则采用 PCRE Perl 兼容正则表达式的语法进行规则匹配,如相使用 Nginx 的 Rewrite 功能,在编译 Ngi ...

  9. 第七章:nginx的rewrite规则详解

    模块ngx_http_rewrite_module 该ngx_http_rewrite_module模块用于使用PCRE正则表达式更改请求URI,返回重定向,并有条件地选择配置. 句法: break; ...

最新文章

  1. nginx的gzip压缩功能
  2. python.freelycode.com-Python日期时间处理: datestuff
  3. win10下gnuplot的安装
  4. 【收藏】Maven 生成打包可执行jar包
  5. linux增加分区swap,linux中Centos7增加swap分区详解
  6. mysql某个值连续出现的记录_MySQL-面试必备
  7. Intelij IDEA 常用快捷键
  8. html霓虹灯效果图,HTML5 SVG+CSS3霓虹灯文字边框动画特效
  9. 火狐导cookie文件没反应_效率指南|实操区分FireFox火狐的国内版和国际版
  10. java 动态获取IP地址(城市)
  11. HTML知识积累及实践(五) - 表单元素
  12. Linux之fd与dup2复制fd用法
  13. C/C++ 异常( std::exception)
  14. 安装mysql-server之后,root用户不能登录问题
  15. 数据中心节能制冷系统分析
  16. vss2005版本库迁移
  17. 解决Nvidia 显卡驱动安装失败的方法
  18. 《莎士比亚》文本生成
  19. mdx格式mysql_Saiku_学习_02_Schema Workbench 开发mdx和模式文件
  20. 如何将dataframe数据类型某两列合并成一列

热门文章

  1. jquery 判断元素显示或隐藏
  2. OSCHina技术导向:Java模板引擎velocity
  3. C# 类(7) 继承
  4. Hibernate 笔记 缓存
  5. idea git 发起一个pull request 请求
  6. DAX2012 R3安装
  7. Python的异常处理机制 -- (转)
  8. C#控件 Datagriview控件
  9. serial driver 1
  10. Java过滤掉map集合中key或value为空的值