RewriteRule获取两个变量?

时间:2011-11-16 05:14:51

标签: php .htaccess

在我的public_html中,我有一个 profile.php 文件和一些此格式的链接

domain.com/shop/index.php?c=amazon&id=2

通往类别为id 2的亚马逊商店

在public_html内的一个名为 shop 的文件夹中,我有 index.php ,它显示了2类产品。

然而,除了上面那个丑陋的链接,我想要一些格式为

的东西
domain.com/shop/company/category-id
e.g. domain.com/shop/amazon/2

我不想在同一个文件夹中包含 profile.php shop.php ,因为我在那里有另一个RewriteRule。

在这个两个变量的情况下,我必须使用什么RewriteRule?谢谢

2 个答案:

答案 0 :(得分:2)

您需要在.htaccess目录中创建包含以下内容的shop文件:

RewriteEngine On
RewriteRule ^([^/]+)/(\d+)$ index.php?c=$1&id=$2

答案 1 :(得分:1)

这应该有效:

RewriteEngine On

RewriteRule ^([a-zA-Z0-9]+)/([0-9]+)$ index.php?c=$1&id=$2

或者您可以将index.php移回public_html并将其命名为shop.php,然后执行此操作:

RewriteEngine On

RewriteRule ^shop/([a-zA-Z0-9]+)/([0-9]+)$ shop.php?c=$1&id=$2