具有相同模式的多个重写URL

时间:2017-12-11 11:03:58

标签: php .htaccess url-rewriting

我想用不同的名称重写几个页面,但在参数中使用相同的模式。现在他们彼此冲突。

RewriteRule     ^([0-9a-zA-Z]+)/([0-9]+)  category.php?categorie=$1&id=$2

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

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

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

第一个参数的名称是不同的,我应该用作条件,但我不能让它工作。提前谢谢。

1 个答案:

答案 0 :(得分:2)

添加这些前缀即/category/, /product/, /organisation/, /result/后,您只需要一个重写规则:

RewriteEngine On

RewriteRule ^/?(category|product|organisation|result)/([0-9a-zA-Z]+)/(\d+)/?$ $1.php?$1=$2&id=$3 [L,NC,QSA]