我有一个重写规则,可以将www.OLDsite.co.uk/locations.php?area=Barking,%20Essex
重定向到www.NEWsite.co.uk/locations.php?area=Barking,%20Essex
......理想情况下,无论如何。问题存在于URL的末尾。而不是像它应该重定向到上面的新网站...而是生成以下网址:www.NEWsite.co.uk/locations.php?area=Barking,%2520Essex
。我真的很困惑......这是我目前的.htaccess文件......
RewriteEngine on
RewriteRule ^locations.php/(.*)$ http://www.NEWsite.co.uk/locations.php$1 [R=permanent,L]
ErrorDocument 404 /404.php
我是mod_rewrites的新手,但我愿意学习。我知道这是一个非常强大的工具,在我的开发人员库中使用它并不是一件坏事。所有提示都表示赞赏。
答案 0 :(得分:2)
将您的RewriteRule更改为:
RewriteRule ^(locations\.php.*)$ http://www.localhost/$1 [R=301,L,NE]
此处的重要更改是标记NE
,它告诉Apache不对生成的URI进行编码,因此%20
仍为%20
而不是%2520
。
答案 1 :(得分:1)
问题是:
%25 is equal to "%" symbol
但那等于%20或空格..不要使用space..use“+”