我有一个导航路线,看起来像:
/book/bookname-1234/
我有一个API路由来购买这本书:
/book/1234/purchase
对于导航路由,我希望我的Nextjs服务器处理它,但我希望API路由由我们的python服务器处理。
在我的nginx配置中,我已经定义了Nextjs路由,并将其全部用于python。
对于导航路径,我将其设置为:
location ~ /book/^[a-z]+(?:-[0-9]+)$ {
try_files $uri @nextjs;
}
我也试过在"/book/^[a-z]+(?:-[0-9]+)$"
周围加双引号我在这里做错了什么?
要匹配url,您可以使用:
/book/[a-z]+-[0-9]+/$
如果要重用捕获组的值,可以使用2个捕获组
注意,在示例字符串中有一个结束的/
,使用^
表示字符串的结束。
/book/a-z]+-[0-9]+/$
Regex演示
那么你可以使用后面跟着单词purchase
的两个捕获组来获得/book/1234/purchase