mod_rewrite - 规则问题

时间:2011-03-19 13:55:30

标签: apache mod-rewrite

对于动态页面,我有所有请求转到product.php页面,并通过参数进行排序。规则是:

RewriteRule ^products/([^/]+)/([^/]+)/([^/]+)$ product.php?cat_slug=$1&sub_slug=$2&product_slug=$3 [L,QSA]
RewriteRule ^products/([^/]+)/([^/]+)$ product.php?cat_slug=$1&sub_slug=$2 [L,QSA]
RewriteRule ^products/([^/]+)$ product.php?cat_slug=$1 [L,QSA]

我现在想要一个规则处理所有其他请求转到page.php?id = $ 1。类似的东西:

([^ /] +)page.php?id = $ 1

不幸的是,这不起作用。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您需要指定字符串的开头和结尾,并排除替换路径:

RewriteCond $1 !^(page|product)\.php$
RewriteRule ^([^/]+)$ page.php?id=$1