これの私の実際の実装は、認証やその他の多くのもので、はるかに複雑ですが、最も単純な形式では、ここに私が抱えている問題があります。ヘッダーを使用したリダイレクトは、それ自体がリファラーであることを明らかにしません。
たとえば、start.php、middle.php、end.php の 3 つのページがあるとします。
start.php
<html><body>
<a href="middle.php">middle</a>
</body></html>
middle.php
<?php
header('Location: end.php');
?>
end.php
<?php
echo 'The referer is: ' . $_SERVER['HTTP_REFERER'];
?>
リンクをたどると end.php にたどり着きますが、リファラーは middle.php ではありません。これを修正するために使用できる他のリダイレクト方法、または他にできることはありますか?
乾杯
編集 この場合、宛先ページはサードパーティ ベンダーです。彼らが検証しなければならない唯一の方法は、URL を参照することです。私はそれを制御できません。適切な URL を送信するためにリダイレクトを行うページが必要なだけです。http_referer を信頼しない理由を分解するのではなく、このリダイレクト方法に代わるものはありますか?