Regex Nginx目录路径作为参数

Regex Nginx目录路径作为参数,regex,nginx,url-rewriting,Regex,Nginx,Url Rewriting,我试图使用nginx中的location块将目录路径作为get参数传递到index.php中 因此,url/api/arg1/arg2/将作为/api/index.php?arg1=$1&$arg=2 下面是我的尝试,有人可以帮助我使用正则表达式或更好的方法 location ~ "^/api/(\w+)/([A-z,0-9].*)/$" { alias /api/index.php?arg1=$1&arg2=$2; } 请注意,要传递的参数是一个单词,没有由数字和字母组成

我试图使用nginx中的location块将目录路径作为get参数传递到index.php中

因此,url
/api/arg1/arg2/
将作为
/api/index.php?arg1=$1&$arg=2

下面是我的尝试,有人可以帮助我使用正则表达式或更好的方法

location ~ "^/api/(\w+)/([A-z,0-9].*)/$" {

    alias /api/index.php?arg1=$1&arg2=$2;

}
请注意,要传递的参数是一个单词,没有由数字和字母组成的空格,也不需要其他符号。

请尝试下面的内容

location ~ /api/(?P<arg1>\w+)/(?P<arg2>[A-z,0-9].*)/$" {

    rewrite "^.*$" /api/index.php?arg1=$arg1&arg2=$arg2;

}
location~/api/(?P\w+)/(?P[A-z,0-9].*)/$”{
重写“^.*$”/api/index.php?arg1=$arg1&arg2=$arg2;
}
如果您不担心这些参数中的数据,我宁愿使用

location ~ "/api/(?P<arg1>[^/]+)/(?P<arg2>[^/]+)/$" {

    rewrite "^.*$" /api/index.php?arg1=$arg1&arg2=$arg2;

}
location~“/api/(?P[^/]+)/(?P[^/]+)/$”{
重写“^.*$”/api/index.php?arg1=$arg1&arg2=$arg2;
}

谢谢你的回复。在大约五个小时的nginx和重定向循环、找不到文件以及配置错误后,我放弃了,尝试了nodejs,并设法在三分钟后得到了我想要的。
app.get(“/api”,handle);
app.get(/^\/api\/([a-z]+)\/$/,handle);
app.get(/^\/api\/([a-z]+)\/([a-z,0-9]+)\/$/,句柄);