.htaccess多规则重写

时间:2015-10-26 08:26:24

标签: php .htaccess

基本上,我想要路径:

store.com/ [CATEGORY_NAME] / [subcategory_name]

所以 - >的 store.com/computer/hard-drive

这个是有效的:

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ products.php?category=$1&subcategory=$2 [L]

然后我需要每个产品细节,让我们说“wd1tera”有路径: store.com/computer/wd1tera

真实路径是:product.php?id = [number]

此网站将具有绝对类别和子类别,并且始终在类别下具有产品路径,即使它是子类别的一部分。但是我们当然会有几个类别名称,而不仅仅是“计算机”。

有人能帮助我吗?

1 个答案:

答案 0 :(得分:1)

如果产品ID是字母数字,那么就无法区分这两个规则,因此您需要某种标识符。

我建议使用以下网址,因为它们会为每个网页的含义添加更多描述性内容:

http://www.domain.com/category/{CAT}/{SUB}
http://www.domain.com/view/{CAT}/{ID}

但是,如果产品ID仅为数字,则可以执行以下操作:

RewriteRule ^([a-zA-Z0-9_-]+)/([0-9]+)$ product.php?id=$2
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ products.php?category=$1&subcategory=$2