htaccess 中的多个 RewriteRules 到同一文件

Multiple RewriteRules in htaccess to same file

好吧,我真的是 htaccess 的菜鸟,我所做的一切都是反复试验。

我必须为我的网站制作几个登陆页面,并且需要控制 htaccess 中的 URL,以便它们在 google 等方面看起来不错。

#Landingpages ex.
RewriteRule ^colors/ article.php
RewriteRule ^sizes/ article.php
RewriteRule ^categories/ article.php

所以当我输入 url www.domain.com/colors 时,它会转到 article.php ,在那里我可以用 $_SERVER['REQUEST_URI'] 拿起 url 并获得 '/colors ' 在我的数据库中进行查找

我将适当地拥有其中的 25 个。

我也想做 /colors/green 并将其用作我的数据库的键,但我不想像下面那样为它添加 RewriteRule,因为那样我会有很多

RewriteRule ^colors/green article.php

注意:我还有其他不想访问的页面 article.php,例如 /basket 或 /profile 等

执行上述操作的最佳方法是什么?

我可以在一个 RewriteRule 中实现吗?

我可以发ex这个词吗?颜色作为 article.php?

的获取参数

您可以使用正则表达式交替和捕获组从可以作为 GET 参数传递的 URI 捕获值:

RewriteEngine on

RewriteRule ^(colors(?:/green)?|sizes|categories)/ article.php?id= [L,QSA,NC]