nginx配置location项的URL匹配规则

本文详细介绍了Nginx中URL匹配规则及其优先级顺序,包括精确匹配、正则匹配等不同方式,并给出了实际应用建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#Location URL的正则匹配规则

##示例

location / {
                        try_files $uri @apache;
                        }
#所有的路径都是/开头,表示匹配所有
                location @apache {
                        internal;
                        proxy_pass http://127.0.0.1:1080;
                        include proxy.conf;
                        }
#url重定向至@apache规则
                location ~ .*\.(php|php5)?$
                        {
                                proxy_pass http://127.0.0.1:1080;
                                include proxy.conf;
                        }
#匹配所有以.php或者.php5的URL, ~表示区分大小写
                location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
                        {
                                expires      30d;
                        }
#匹配以.gif,.jpg,.jpeg,.png,.bmp,.swf结尾的url
                location ~ .*\.(js|css)?$
                        {
                                expires      12h;
                        }
#匹配以.js或者.css结尾的url
                

##匹配的优先级顺序
(location =) > (location完整url) > (location ^~) > (location ,*) > (lcoaltion部分起始路径) > (/)

  • = 表示精确匹配
  • ^~ 表示指定的路径开头
  • ~ 表示区分大小写的正则匹配
  • ~* 表示不区分大小写的正则匹配
  • / 通用匹配,所有的URL都是以此为开头

##使用建议

location = / {
    proxy_pass http://127.0.0.1:1080/index.php;
}
#匹配根路径

location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {
    root /web/static/;
}
#匹配所有静态文件

location / {
    proxy_pass http://127.0.0.1:1080/index.php;
}
#匹配所有的路径
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值