多重负面后视

多重负面后视

我有这个代码:

location ~* (/.*)?(?<!(food/sweet/dessert))/dollaritems {
  return 301 $1/breakfast/la/dollaritems;
}

这可以很好地将用户重定向到 URL 中带有 /dollaritems 的任何页面,但包含 food/sweet/dessert/dollaritems 的请求除外。

现在,我想添加另一个负面后视,如下所示:

location ~* (/.*)?(?<!(food/sweet/dessert))(?<!(food/savory/bacon))/dollaritems {
  return 301 $1/breakfast/la/dollaritems;
}

第二次负面后视似乎不起作用。

我也尝试过:

location ~* (/.*)?(?<!(food/sweet/dessert|food/savory/bacon))/dollaritems {
  return 301 $1/breakfast/la/dollaritems;
}

但这也不起作用。是不是我的正则表达式不好,或者我不应该创建两个负向后视?

提前谢谢了。

相关内容