nginx rewrite小问题

本文探讨了在Nginx中使用URL重写规则时遇到的问题。具体分析了两条URL重写规则,其中一条未能正确匹配目标URL。通过调整规则顺序解决了重写失败的问题。

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

网站url 经常要用的url rewirte,在nginx下,配置也挺简单的

在location 下加上rewrite规则即可。

那么我现在http://127.0.0.1/site/idmin/index/  和 http://127.0.0.1/site/admin/Admin/index/两个url,其中后面那个url的admin是一个后台目录

我重写的规则分别是 

rewrite ^/site/(.*)/(.*)$ /site/index.php?a=$i&b=$2 last     //第一条

rewrite ^/site/admin/(.*)/(.*)$ /site/admin.php?a=$i&b=$2 last //第二条

发现后面url规则重写不成功。是因为.*是模糊匹配,当地址是http://127.0.0.1/site/admin/Admin/index/,第一条规则也匹配成功了,

但是重写的地址确是index.php入口文件,所以不成功。这里在模糊规则下应该把第二条放到第一条前面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值