PHP标头位置应该被编码吗?


Should PHP header locations be encoded?

PHP标头位置应该被编码吗?

header("Location: ".$_SERVER["REQUEST_URI"]);
header("Location: ".rawurlencode($_SERVER["REQUEST_URI"]));

如果是,为什么,何时,如何?

如果URL中有一些特殊字符(在RFC1806中定义),则只需要对其进行编码。特别是您应该用以下字符编码所有url: {}|'^~[] ' (RFC1738)