我必须使用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¶meter2=werwer";
header("location:$buildURL ");
?>
我怎样才能做到这一点? Htacces?或任何其他方法???
答案 0 :(得分:0)
如果您想防止篡改URL参数,可以使用HMAC
http://rc3.org/2011/12/02/using-hmac-to-authenticate-web-service-requests/
否则,您应该在服务器上使用白名单列表