028-86922220

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

nginxlocation匹配及rewrite规则-创新互联

location匹配规则

1. 实例

server{
        location = \ {
            [配置A]
        }
        location / {
            [配置B]
        }
        location = /images/ {
            [配置C]
        }
        location ^~ /static/{
            [配置D]
        }
        localtion ~* \.(gif|jpg|png){
            [配置E]
        }
}

2. location语法规则

语法:

创新互联专业提供成都主机托管四川主机托管成都服务器托管四川服务器托管,支持按月付款!我们的承诺:贵族品质、平民价格,机房位于中国电信/网通/移动机房,成都服务器托管服务有保障!
location  = | ~ | ~* | ^~ | @  /url/{       //注意 =、~、~*、^~ 、@是location的匹配规则,”|“表示或者
“
    ......省略其他配置
}

规则说明:

符号 含义
=字面精准匹配,如果匹配,则跳出匹配过程(不再进行正则匹配)
~开头区分大小写的正则匹配
~*开头不区分大小写的正则匹配
^~开头表示uri以某哥常规字符串开头,理解为匹配url路径即可
/通用匹配,在没有正则表达式匹配时,任何请求都会匹配到
@不是普通的location匹配,用于location内部重定向的变量
~开头区分大小写的正则匹配

多个location配置的匹配顺序:

注意:每次匹配成功后,停止匹配,会按照本匹配的location处理请求

按照上面实例进行说明匹配顺序:

1.实例

server{
        listen 80;
        server_name www.jkyst.xyz jkyst.xyz;
        if($host != 'www.jkyst.xyz' ){
            rewrite ^/(.*)$ http://www.jkyst.xyz/$1 permanent;
        }
        location ~.*\.(png|gif|jpg){
            return 403;
        }
    }

2.rewrite语法规则

语法:

rewrite     regex       replacement     [flag]

rewrite:rewrite重写的关键字不可省略
regex:这里写的是正则表达式
replacement:这里是重新内容
flag:这里是最后的flag标记

flag标记说明:

flag标记 说明
last也就是apache里的(L)标记,表示完成rewrite,URL地址不会改变
break本条规则匹配成功后,会停止匹配,不再匹配后面的规则,URL地址不会改变
redirect返回302临时重定向,浏览器地址会显示跳转后的URL地址
permanent返回301永久重定向,浏览器地址栏显示跳转后的URL地址,Nginx返回response状态码301

相关符号说明:

符号 说明
*代表前面0或者多个字符
+代表前面1或者多个字符
?代表前面0或1个字符
^代表字符串的开始位置
$代表字符串结束位置
$n代表字符串结束第n个参数
.通配符,代表任何字符

3.应用实例

参数 介绍
-f判断文件是否存在 返回值true为存在
!-f判断文件是否存在 返回值false为不存在
-d判断目录是否存在 返回值true为存在
!-d判断目录是否存在 返回值true为不存在
-e判断文件或目录是否存在 返回值true为存在
!-e判断文件或目录是否存在 返回值true为不存在
-x判断文件是否可执行 返回值true为可执行
!-x判断文件是否可执行 返回值true为不可执行

举例说明:

server{
        listen 80;
        server_name www.jkyst.xyz;
        if(!-e $request_filename){
            rewrite  ^/test/(.*)$ http://www.jkyst.xyz/test1/$1 permanent;
        }
    }

判断文件或目录是否存在

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文名称:nginxlocation匹配及rewrite规则-创新互联
网址分享:http://www.tsicrk.com/article/ggcgd.html

其他资讯

让你的专属顾问为你服务

2.3238s