2016-04-28 4 views
0

GETメソッドを使用してページをリダイレクトする必要があるため、URLにGETクエリ文字列パラメータを表示したくありません。セキュリティ上の理由から、エンドユーザーに自分のGETパラメータを変更させることはできません。また、リダイレクトしているページでは、GETパラメータのみを受け入れるため、ここでPOSTメソッドを使用することはできません。 このページにはSSLが既にセットアップされています。GETメソッドを使用してリダイレクトするページ

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

使用 'ヘッダをURLのホワイトリストを使用する必要があります場所:... ")' http://php.net/manual/bg/function.header.php – mitkosoft

+0

'openssl_decrypt()'メソッドを使用してくださいそれはあなたを助けるでしょう。 – RJParikh

+0

ハッシュを計算し、塩を入れて、GETが実行する権限を持っているかどうかを検証しながらリダイレクトを実行することができます。ヘッダーを送信してリダイレクトを続行する場合は、ちょっと考えてください – niklon

答えて

関連する問題