ホームページ  >  記事  >  バックエンド開発  >  異なるブラウザで同じ session_id が使用される可能性はありますか? ? ? ?

異なるブラウザで同じ session_id が使用される可能性はありますか? ? ? ?

WBOY
WBOYオリジナル
2016-06-23 14:26:112854ブラウズ

session_id はセッション Cookie を重複します

私が常に知っていたことは、session_id は絶対に一意であるということです。
しかし、第 2 レベルのドメイン名のセッション共有を行うときに、問題が見つかりました。ユーザーが初めてアクセスすると、session_id が Cookie に保存され、Cookie の有効期間が 1 日に設定され、その後ユーザーが出る。 30 分後、サーバーのセッションは破棄され、この時点でユーザーは Cookie に保存されている session_id を使用してアクセスします。 。サーバー側では、session_id を第 2 レベルのドメイン名と共有するために、$_COOKIE['session_id'] が存在する限り、session_id() 関数を使用してサーバーのセッションに直接アクセスするという判断が行われました。 。
このとき、ユーザーが渡した session_id が破棄されているという問題が発生します。では、現時点でサーバー上にセッションがあり、その session_id がたまたまユーザーによって渡された $_COOKIE['session_id'] である可能性はあるでしょうか? ? ?
注: サーバーはセッションを破棄した後、セッションに対応する session_id を当然無視します。その後、サーバーはこの session_id を再度生成し、別のセッションに割り当てることができます。
アドバイスをお願いします、よろしくお願いします! ! ! ! !

ディスカッションへの返信(解決策)

session_id は、地球が回転している限り、重複することはありません

時間は増加する値なので、経過した時間は表示されません。将来。しかし、session_idは文字+数字の文字列ではないでしょうか? 順列や組み合わせで重複する可能性もありますか? ?
session_id は、地球が回転している限り、重複はありません。

8 バイトの数値は、約 100 年間も使用されます。百年?

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。