Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用2个参数重定向php url_Php_.htaccess - Fatal编程技术网

使用2个参数重定向php url

使用2个参数重定向php url,php,.htaccess,Php,.htaccess,我正在尝试将我的api设置为有两个端点,我所见过的最简单的方法是使用一个.htaccess文件来重定向与显示相同的内容。我现在遇到的问题是,我希望它包含第二个参数,例如与相同或甚至相同 当前的.htaccess文件是 RewriteEngine On RewriteRule ^/?category/([^/d]+)/?$ index.php?category=$1 [L,QSA] 你可以用这样的东西 RewriteEngine On RewriteBase / RewriteRule ^ind

我正在尝试将我的api设置为有两个端点,我所见过的最简单的方法是使用一个.htaccess文件来重定向与显示相同的内容。我现在遇到的问题是,我希望它包含第二个参数,例如与相同或甚至相同

当前的.htaccess文件是

RewriteEngine On
RewriteRule ^/?category/([^/d]+)/?$ index.php?category=$1 [L,QSA]

你可以用这样的东西

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?category$ $1category/ [R=301,L]
RewriteRule ^ - [L]
RewriteRule . index.php [L]

我想出来了,我能够使用一些类似于

RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ project3/api/index.php?category=$1&filter=$2 [L]

我更倾向于推荐使用和路由器。基本上,您将所有请求传递到index.php,在那里您在代码中定义了路由(url模式)。然后路由器匹配URL并调用该路由的已配置回调。它使添加具有不同url结构的新路由变得更加容易。它还使得在web服务器之间移动应用程序变得更容易(比如不使用htaccess文件的nginx)。@MagnusEriksson如果我打算扩展并使其更大,这可能是一个更好的选择,这仅仅是一个大学项目,在此之前,我们所知道的只是如何制作一个简单的笑话API,它返回了10个笑话中的一个,尽管我将在将来记住它,
/API/category/platform
/API/platform/price
似乎是模棱两可的,除非有一种模式区分构成这些笑话的值“类别”、“平台”和“价格”?很抱歉,这并没有试图回答这个问题。(?)很难看出这与您问题中的示例有什么关系?这是
.htaccess
文件在
/api/category
子目录中吗?