我目前在我网站上的网址上收到了大约400个错误请求错误,其中包含%符号。这些网址不是在网站上生成的,而是以某种方式被谷歌选中。
示例网址是
http://example.com/file/download/1/%s.html
我想知道如何重写这些网址以删除%符号。
答案 0 :(得分:2)
不要以为你能够对此做任何事情。我假设因为这是生成400,%
不是编码,因为请求是字面上的:
/file/download/1/%s.html
而不是
/file/download/1/%25s.html
因为%
是保留字符,如果apache在请求中看到%s
,它会假定%
之后的2个字符是十六进制数并尝试解码它,s.
无效,因此会返回400错误请求。
此请求从未传递到URL处理管道,因此mod_rewrite或您放在htaccess文件中的任何其他内容将永远不会看到它。