首页 > 解决方案 > openresty nginx conf 以捕获以特定值开头的位置

问题描述

我正在使用 openresty 并且在我的 default.conf 中,我正在检查某些 API,如果请求是针对此 API 的,那么我需要将请求按原样发送到后端。我这样做是这样的:

location = /y/products/ {
  include /xxx/yyy/some.conf;
}

这工作正常。但是,我希望能够对以 /y/products 开头的 API 调用执行类似的操作

所以,假设我的 API 可能是这样的:

y/products/00000001-2aef-13ef-b12f-8b7e4f3f4e1a/check?val=abcdefgh

如何更改上面的位置检查语法以捕获此表单的请求,以便我可以决定对这些 API 调用执行什么操作?

标签: nginxnginx-locationnginx-configopenresty

解决方案


删除等号:

location /y/products/ {
  ...
}

位置可以由前缀字符串或正则表达式定义。

此外,使用“=”修饰符可以定义 URI 和位置的精确匹配。

https://nginx.org/en/docs/http/ngx_http_core_module.html#location


推荐阅读