nginx重写功能

一、Nginx常见模块

http

http块是Nginx服务器配置中的重要部分,代理、缓存和日志定义等绝大多数的功能和第三方模块的配置都可以放在这模块中。作用包括:文件引入、MIME-Type定义、日志自定义、是否使用sendfile传输文件、连接超时时间、单连接请求数上限等。

server

server块,虚拟主机(虚拟服务器)。作用:使得Nginx服务器可以在同一台服务器上只要运行一组Nginx进程,就可以运行多个网站。

location

location块是server块的一个指令。作用:基于Nginx服务器接收到的请求字符串,虚拟主机名称(ip,域名)、url匹配,对特定请求进行处理。

二、访问路由location

2.1 location常用正则表达式

匹配符        表示含义

^        匹配输入字符串的起始位置

$        匹配输入字符串的结束位置

*        匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll”

+        匹配前面的字符一次或多次。如“ol+”能匹配“ol”及“oll”、“olll”,但不能匹配“o”

?        匹配前面的字符零次或一次,例如“do(es)?”能匹配“do”或者“does”,”?”等效于”{0,1}”

.        表示任意一个字符

\转义字符        用于取消特殊符号的含义

\d        匹配纯数字

\s        匹配空的(空格或者制表符)

{n}        匹配前面的子表达式n次

{n,}        匹配前面的子表达式不少于n次

{n,m}        匹配前面的子表达式n到m次

[ ]        匹配括号中的一个字符

[c]        匹配单个字符 c

[a-z]        匹配 a-z 小写字母的任意一个

[a-zA-Z0-9]        匹配所有大小写字母或数字

()        表达式的开始和结束位置

|        或运算符

2.2location的分类

精准匹配:location = / {}

一般匹配:location / {}

正则匹配:location ~ / {}

2.3location 常用的匹配规则

规则表达式        规则含义

=        进行普通字符精确匹配。也就是完全匹配

^~        表示普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其他 location

~        表示执行一个正则匹配,区分大小写

~*        表示执行一个正则匹配,不区分大小写

!~        表示执行一个正则匹配,区分大小写不匹配

!~*        表示执行一个正则匹配,不区分大小写不匹配

2.4location优先级排列说明

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值