title: Different session data for each browser tab
body: <p>Usually, HTTP server-side session data storages (for example <code>$_SESSION</code> in PHP) are implemented using cookies - each client has an unique session ID stored in a cookie. The server receives this cookie and finds the session data using it (as some kind of key or a filename).</p>
  
  <p>This works fine, but sometimes it can cause problems as the cookie (and so the session) is shared across browser tabs.</p>
  
  <p>My question is: <strong>Is it possible to implement a server-side data storage which would hold different data for each browser tab?</strong> And what is the best way to do it? Without client-side JavaScript.</p>
  
  <hr>
  
  <p>Example: you have some kind of really complicated form with multiple steps and you want to store the data from previous steps somewhere, before you write everything to the database. You can store the data to the session, but that wouldn't work correctly if someone used the same form in multiple browser tabs - because the session data would be shared. So it would be nice to have a different storage for each tab.</p>
  
  <p>Example #2: you want to allow users to be logged on multiple accounts in the same browser. So you need some kind of "fork" mechanism for the session.</p>