转换url段以获取变量,让其他人获取变量

时间:2019-07-22 21:59:53

标签: nginx nginx-config

我无法解决我的网址

domain.com/api/class/access/1/index.php?username=usua​​riodemo&name=sala

其中 / 1 /是ID ,因此,我需要转换/ 1 /以获得

之类的变量

domain.com/api/class/access/index.php?id=1&username=usua​​riodemo&name=sala

那是纯PHP而不是框架,我的index.php位于文件夹api / class / access / index.php

我有这个,我可以尝试其他人,但这可以更好地解释我的意图

location /api/class/access/(.*)/* {
       try_files $uri $uri/ /api/class/access/index.php?id=$1&$query_string;
}

那告诉我:

未指定输入文件。

谢谢! 问候!

1 个答案:

答案 0 :(得分:0)

您问题中的location语句无效,并且可能是不必要的。

如果要重写以.php结尾的URI,最简单的做法是在处理所有rewrite URI的块中放置.php语句,通常是:location ~ \.php$ { ... }

例如:

location ~ \.php$ {
    rewrite ^(/api/class/access/)(\d+)/(index.php)$ $1$3?id=$2 last;
    ...
}