匹配? htaccess中的角色

时间:2016-07-14 21:41:04

标签: .htaccess mod-rewrite

我的问题只是我想匹配“?”性格但似乎htaccess不匹配?字符。我想要的只是

site.com/search.html?age=1&color=2

to

site.com/index.php?page=search&age=1&color&2

我的htaccess

RewriteRule search.html?(.*)$ index.php?page=search&$1 [L]

1 个答案:

答案 0 :(得分:1)

您无法匹配RewriteRule中的查询字符串。除此之外,你甚至不需要在这里匹配?

将您的规则替换为:

RewriteRule ^search\.html$ index.php?page=search [L,QSA,NC]

QSA(查询字符串追加)标志在添加新查询参数时保留现有查询参数。这就是您不需要在此捕获现有查询字符串的原因。