具有%字符的Apache重写规则

时间:2012-11-26 00:07:43

标签: apache rewrite

我有一个需要重写的网址。

http://aplus-carpetcleaning.com/home.php%3Fcity%3DGainesville%2520VA

我试过这个:

^home\.php%3Fcity%3DGainesville%2520VA$ "http://aplus-carpetcleaning.com/home.php?city=Gainevilles%20VA"

这是不被承认的。试过各种替补,但没有骰子。

注意:

  • %3F是'?'
  • %3D是'=',
  • %2520谁知道?

2 个答案:

答案 0 :(得分:0)

重写模块将您的正则表达式模式应用于已解码的网址,而不是您在浏览器网址字段中看到的urlencoded字符串。

因此,请使用非转义字符创建正则表达式模式。类似的东西:

^ home.php \城市=盖恩斯维尔&安培; 20VA $

答案 1 :(得分:0)

修正了:

RewriteRule ^ home.php(。)city(。)Gainesville(。*)VA $“http://aplus-carpetcleaning.com/home.php?city=Gainesville VA”[ R = 301,L]

感谢大家的帮助。 千斤顶