使用GET方法重定向页面

时间:2016-04-28 08:06:07

标签: javascript php security

我必须使用GET方法重定向页面,我不想在URL中显示GET查询字符串参数。出于安全原因,我不允许最终用户修改我的GET参数。另外,我不能在这里使用POST方法,因为在我重定向的页面上只接受GET参数。 我已经在此页面上设置了SSL。

https://www.ddd.com?url=secureURL.com

黑客可以将其改为

https://www.ddd.com?url=www.google.com

到目前为止我在本地测试过

<form method="GET" name="sub" action="SELF">
    <input type="hidden" name="parameter1" value="1234" />
    <input type="password" name="parameter2" value="werwer2" />
    <input type="text" name="parameter3" value="werwer3" />
</form>

<script language='javascript'>
    document.sub.submit();
</script>

<?php
$buildURL = "http://localhost:8080/mypage?parameter1=1234&parameter2=werwer";
header("location:$buildURL ");
?>

我怎样才能做到这一点? Htacces?或任何其他方法???

1 个答案:

答案 0 :(得分:0)

如果您想防止篡改URL参数,可以使用HMAC

http://rc3.org/2011/12/02/using-hmac-to-authenticate-web-service-requests/

否则,您应该在服务器上使用白名单列表