这不起作用:
<?PHP header('Location: www.mysite.com/index.PHP?foo=bar&var=abc'); ?>
我最终得到了www.mysite.com/index.PHP?foo=bar我认为HTML可能会试图将& var解释为一个字符.传递初始变量(在?之后),但后面的所有变量都没有(在&之后).
if( isset($_SERVER['HTTPS'] ) ) { header('Location: https://'.$_SERVER['SERVER_NAME'].'/index.PHP?'.$_SERVER['QUERY_STRING']); } else{ header('Location: http://'.$_SERVER['SERVER_NAME'].'/index.PHP?'.$_SERVER['QUERY_STRING']); }
使用htmlspecialchars来防止html注入