IEとセッションロス(ニューウィンドウCookieロス)の実測と解決策_PHPチュートリアル

WBOY
リリース: 2016-07-21 15:00:46
オリジナル
1018 人が閲覧しました

今日、グループで IE6 での js open の使用について質問された人がいて、新しいウィンドウでセッションを取得できないことがわかりました。
次のテスト コードを使用してテストした結果、phpsessionid ストレージがプロセス レベルの有効性であることがわかりました。はい、open または target="_blank" の後に新しい IE プロセスが開かれると多くの人が言います
したがって、前のウィンドウの phpsessionid は新しいウィンドウに続きません。
私自身のテスト使用 ietest 6/7/8 でも同じ状況が発生します (9 は起動できません。不明です)
Windows に付属の ie10 テストを使用すると、この状況は発生しません。
Chrome もマルチスレッドですが、この状況は存在しません

Firefox にはこの状況はありません

コードをコピーします setcookie('kkkkk','bbbb', time() + 1111111);
$_SESSION['qidizi'] = 'kkkk';
dddd


b.php ページから飛び出す



コードをコピーする
コードは次のとおりです:

var_dump( $_SESSION ,$_COOKIE); テストから、Cookie の設定が遅れるとタイマーが期限切れになることがわかります。プロセス レベルではなく、開いた後にも確認できます。 IE カーネルを使用するときにユーザーがログイン状態を失わないようにするため、Cookie を使用できます。
php 設定では sid を uri に自動的に追加する方法が提供されますが、Cookie の極端な場合には相対パスは自動的に追加されません。無効になることはほとんどありません。一般的な状況には
cookie+session で十分です。



http://www.bkjia.com/PHPjc/328039.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/328039.html

技術記事

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート