我需要重写一个URL来纠正查询字符串参数

时间:2016-10-31 21:34:03

标签: .htaccess mod-rewrite url-rewriting

我有一个这样的网址: https://www.example.com/msg/13243993939393/?param1=first&param2=second/param3=last

需要更正此问题: https://www.example.com/msg/13243993939393/?param1=first&param2=second&param3=last

我可以在我的root中的.htaccess文件中输入它,或者(最好)在文件夹/ msg中添加.htaccess

我尝试过的一切都行不通。任何帮助将不胜感激!!

1 个答案:

答案 0 :(得分:0)

无法在源头更正网址吗?

如果必须使用它,请使用更正的查询字符串进行外部重定向。像这样:

RewriteCond %{QUERY_STRING} ([^/]*)/([^/]*)
RewriteRule .* /$0?%1&%2 [L,R=301]

在使用=301部分之前测试一切正常,否则你必须在每次测试前清空缓存。在查询中使用序列%23(编码的#),它会快速显示非转义/双转义字符问题。