とても紛らわしい問題について本当に疑問に思っています。値として URL を持つセッションがあります。
$_SESSION['url'] => 'http://www.domain.com/path/';
path/は書き換えられており、実際のディレクトリではありません。セッションは に設定されてpage1.phpおり、 へのリンクがありpage2.phpます。リンクをクリックして に移動すると、それがロードされたpage2.php後に非常に速く実行すると、正しい値が得られます。page1.php$_SESSION['url']
しかし、10 秒間留まってからリンクをクリックして に移動するとpage2.php、または 10 秒間留まってから更新すると、セッション値が自動的に に変更されます404.shtml。
つまり、その値は に変更されhttp://www.domain.com/404.shtmlます。これは、値が URL であり、他の値が正しい場合にのみ発生することに注意してください。
ここで何が起こっているのか本当に混乱していますか?この状況を経験した人はいますか?
page1.phpを編集
session_start();
$_SESSION['url'] => 'http://www.domain.com/path/';
page2.php
session_start();
echo $_SESSION['url']; // Output is 'http://www.domain.com/404.shtml'