Nginx location 匹配规则

Location 的匹配顺序其实是“先匹配普通,再匹配正则”;但正则匹配会覆盖普通匹配

官方文档解释:http://wiki.nginx.org/NginxHttpCoreModule#location

Location 优先级

=   表示精确匹配
^~  表示以某个字符串开头的,不是正则;随后停止匹配正则
~   表示区分大小写的正则表达式
~*  表示不区分大小写的正则表达式
/   通用匹配,如果所有没有的被匹配到,会被匹配到这里

(location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > ((location /)

动静分离

location ^~ /static/ {
    root /webroot/static/;
}
location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {
    root /webroot/res/;
}

选其一即可


附赠两遍写的不错的博客:

http://www.cnblogs.com/lidabo/p/4169396.html

http://seanlook.com/2015/05/17/nginx-location-rewrite/

 

发表评论