nginx html伪静态文件,nginx伪静态排除指定目录伪静态规则设置

方案一、

location ~* ^/(?![static|h5]) { .. 伪静态规则 }通过 location ~* ^/(?![sys-static|h5])  来设置排除目录,| 分割多个目录。

location ~* ^/(?![static|h5]) {

... 伪静态规则

}

===========

示例:

location ~* ^/(?![static|h5]) {

rewrite ^(.*)/([0-9a-zA-Z]+)/$ $1/index.php?url=article/index&pathname=$2 last;

rewrite ^(.*)/([0-9a-zA-Z]+)-([0-9]+).html$ $1/index.php?url=article/index&pathname=$2&page=$3 last;

}

这个排除了static和h5目录

注意:这个方法也不知道是不是我姿势不正确。实际测试有问题,location 中的伪静态规则只有第一个栏目规则和第一个栏目的文章规则执行正常,后面的均不正确。建议使用后面两种方案。

方案二、

所以有了第二种让nginx伪静态排除指定目录方案,使用多个 location,不再使用反向排除的思路,改用匹配到该规则,使用 break 语句停止 rewrite 检查。

location ~* /h5/|/sys-static/{

break;

}

location ~* {

...

}

方案三、

还可以使用请求某个真实存在的文件跳出。示例:

location ~* {

if (-f $request_filename) {

break;

}

...

}

↓ 查看全文

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值