PHP中的会话共享

时间:2013-06-26 08:05:49

标签: php ajax session

考虑以下情况:

  1. 服务器中有2个页面,即:parent.php和child.php
  2. parent.php设置包含高度机密信息的会话
  3. parent.php然后通过Ajax调用child.php然后处理收到的任何信息
  4. 谜: child.php需要与parent.php具有相同的会话状态才能提供parent.php请求的信息。

    这可能吗?

2 个答案:

答案 0 :(得分:3)

只要在每个脚本的顶部调用session_start(),两个脚本都在同一个域中,并且会话cookie不限于子目录,您在$_SESSION中设置的变量在第一个请求中仍将存在于第二个请求中。

答案 1 :(得分:0)

通常通过设置和识别cookie来分配会话。 GET变量有时也会被使用,但被认为是一种提升的安全威胁,因为GET变量在URL中可见。

当涉及何时重用现有会话时,PHP可以设置为一定程度的严格性。例如,你可以摆弄:

  • cookie的生命周期
  • Cookie域名设置
  • cookie路径
  • 如果IP每次都需要相同
  • 如果用户代理每次都需要相同

默认设置不是很严格。

当满足所有条件时,PHP将在调用session_start()时自动重用现有会话。