.htaccess中的重定向不起作用

时间:2014-09-18 14:43:37

标签: apache .htaccess redirect

一个网站刚刚链接到我的网站,网址不正确:

http://www.datanumen.com/aor/%e2%80%9d

我找到了这个并希望通过将URL重定向到:

来解决此问题
http://www.datanumen.com/outlook-repair/

因此,我在.htaccess中添加以下行:

Redirect 301 /aor/%e2%80%9d http://www.datanumen.com/outlook-repair/

但是,当我输入时,这不起作用:

http://www.datanumen.com/aor/%e2%80%9d

在FireFox或IE中,浏览器仍然说未找到页面(404)错误。

如何解决问题?

2 个答案:

答案 0 :(得分:0)

%E2%80%9D是引号的编码:您的重定向工作正常,但%E2%80%9D已被编码为“当您看到它时....所以你的代码重定向到http://www.datanumen.com/outlook-repair/%E2%80%9D

%E2%80%9D是右引号的编码,因此网址显示为http://www.datanumen.com/outlook-repair/

如果您在原始代码中交换%E2%80%9D,它应该可以正常工作:)

答案 1 :(得分:0)

尝试使用\x转义和重写规则:

RewriteEngine On
RewriteRule  ^aor/\xe2\x80\x9d http://www.datanumen.com/outlook-repair/ [L,R=301]

由于%E2%80%9D是URL编码的,因此当URL文件映射处理器到达它时,它已经被解码,因此您需要匹配解码后的字符。