301重定向"%"在字符串中

时间:2015-01-25 17:28:00

标签: .htaccess mod-rewrite redirect

有人从好地方链接到我的网站,但是白痴键入了错误的网址,他在结尾处做了20%(可能是他的网站就是这样)。所以我想将http://example.com/%20重定向到http://example.com,因为http://example.com/%20当然是http://example.com/404,因为它不是有效的网址。

我试过了:

rewriterule ^%20(.*)$ http://example.com$1 [r=301,nc]

但它不起作用。看起来%字符必须以某种方式转义或其他东西。所以我也尝试了

rewriterule ^\%20(.*)$ http://example.com$1 [r=301,nc]

通过逃避它来赋予%原始意义但它似乎也没有起作用。另请阅读htaccess to escape percent (%) from URL,但在那里提出的解决方案似乎也没有起作用。任何人都知道如何做到这一点?非常感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用%20

匹配RewriteRule中的\x20
RewriteRule ^\x20(.*)$ /$1 [R=301,L,NE]