如何将所有'&%3B'替换为'&'在我的_GET网址中通过htaccess?

时间:2018-01-19 08:33:13

标签: php .htaccess mod-rewrite

我有一个类似https://my.com/list.php?login=test&amp%3Bpassword=test&amp%3Btype=m3u的链接,并试图通过.htaccess我的规则

将所有&amp%3B替换为&
RewriteCond %{QUERY_STRING} ^(.*)&amp%3B(.*)$
RewriteRule ^(.*)$ /$1?%1&%2 [L,R=301]

不要工作。 如何将网址中的所有放大器%3B更改为&使用.htaccess文件?

1 个答案:

答案 0 :(得分:0)

你忘记了REQUEST_URI。

此外,由于您正在使用QUERY_STRING  你不需要在RewriteRule

中使用括号

此外,请确保您已" RewriteEngine On"

这是

RewriteEngine On
RewriteCond %{QUERY_STRING} (.*)(&|&amp%3B)(.*)
RewriteRule ^.*$ %{REQUEST_URI}?%1&%3 [L,R=301]

适用于&和& amp%3B。见第二个"()"。