如何在apache重写中从url的末尾删除%

时间:2013-05-29 07:26:17

标签: apache mod-rewrite url-rewriting

我注意到最终请求的网址数量增加了% 例如。 http://sample.com/countries/usa%

我们有一个Apache重写规则,可以将正确形成的请求转换为服务器上的所需页面

RewriteRule ^countries/([a-zA-Z]+)$ /index.php?c=$2

但是,当用户(或机器人?)将%符号添加到结尾时,会强制400错误。 谷歌的网站管理员工具发现了这类错误的增加,我不知道如何删除它。我无法在PHP中执行此操作,因为错误发生在Apache级别。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我会在.htaccess文件的开头添加这样的内容:

RewriteRule ^(.*)\%$ $1 [R=301,L]

这导致永久重定向(因为R = 301)到没有'%'的页面