美文网首页
【nginx】location匹配顺序

【nginx】location匹配顺序

作者: 印比八方来 | 来源:发表于2020-05-09 19:16 被阅读0次

一.在nginx配置网页时,一般常用配置

location / {
    root /apps/web/www;
    try_files $uri /index.html;
    index index.html;
}


location  ~ .*\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$
{
    root /apps/web/www;
}

二.在对业务媒体文件需要指定存储路径时,进行配置

location ^~ /media {
    rewrite  ^/media/(.*)$ /$1 break;
    root /apps/data/media;
}

这里匹配使用 ^~
因为如果直接使用 /media,那么如果访问的文件时jpg|jpeg|gif|png|ico|css|js|pdf|txt这几种,就会优先走

location  ~ .*\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$
{
    root /apps/web/www;
}

三.location的匹配顺序

location = /uri    =开头表示精确匹配,只有完全匹配上才能生效。
location ^~ /uri   ^~ 开头对URL路径进行前缀匹配,并且在正则之前。
location ~ pattern  ~开头表示区分大小写的正则匹配。
location ~* pattern  ~*开头表示不区分大小写的正则匹配。
location /uri     不带任何修饰符,也表示前缀匹配,但是在正则匹配之后。
location /      通用匹配,任何未匹配到其它location的请求都会匹配到,相当于switch中的default。

相关文章

网友评论

      本文标题:【nginx】location匹配顺序

      本文链接:https://www.haomeiwen.com/subject/ehjlnhtx.html