当请求包含百分比%符号的URL时,是否有一种简单的方法可以防止服务器返回错误400(错误请求)?
许多主要网站都存在同样的问题,例如:http://twitter.com/%或http://bing.com/%
但其他网站已修复此问题并返回自定义错误页面,而不是标准服务器响应,例如:http://facebook.com/%或http://google.com/%
是否有一种简单的单一方法来逃避单个字符%符号返回400错误,而是在Apache中使用mod_rewrite或类似的自定义错误文档返回404错误?
最佳答案
Is there a simple, single way to escape a single character % symbol from returning a 400 error
是的,如果不希望它们具有特殊含义,则必须对您放入网址的任何字符进行urlencode.
例如在PHP中:
$string = urlencode('%');
FYI%编码为%:https://twitter.com/%25