我的重定向有问题。
基本上,我使用页面GET变量来获取页面的名称,例如:index.php?page=page1
,我想通过page1.html
然后,如果还有其他get变量,我只想附加它们,如下所示:page1.html?var1=value1
指向index.php?page=page1&var1=value1
我尝试了以下方法:
RewriteRule ^([a-zA-Z]+)\.html$ index.php?page=$1 [L]
RewriteRule ^([a-zA-Z]+)\.html\?(.*)$ index.php?page=$1&$2 [L]
而且我似乎从来没有得到任何其他的获取参数,而不是页面变量...
谢谢
您需要使用查询字符串追加标志。
根据文档:
当替换URI包含查询字符串时,RewriteRule的默认行为是丢弃现有查询字符串,并将其替换为新生成的查询字符串。使用[QSA]标志会使查询字符串组合在一起。
像这样更新您的规则:
RewriteRule ^([a-zA-Z]+).html$ index.php?page=$1 [L,QSA]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句