使用动态参数重写URL

时间:2015-10-09 11:50:58

标签: regex .htaccess url parameters rewrite

如果首先没有设置参数的计数和名称,是否可以使用GET参数将URL重写为表单?

让我说我有这个

/categories/key_1/111/    
/categories/key_1/111/key_2/222/
/categories/key_1/333/key_2/444/key_3/555/
/categories/key_5/333/key_6/444/key_7/555/

我可以将其重写为表格吗?

/categories/?key_1=111&key_2=222....&key_x=xxx

如果参数的顺序,数量和名称不是静态的

唯一的条件是 KEY-VALUE 对设置如此

/ ROOT_FOLDER /的 key_x / value_x /

1 个答案:

答案 0 :(得分:1)

这个单一的递归应该能够做到这一点:

RewriteEngine On

# to convert /categories/n1/v1/n2/v2 to /categories/?n2=v2&n1=v1
RewriteRule ^(categories)/([^/]*)/([^/]*)(/.*)?$ /$1/$4?$2=$3 [L,QSA,NC]