Kev*_*imu 10 php subdomain session-variables
我有一个网站www.example.com.这将有多个子域,可以与单个应用程序或程序一起使用.例如,login.example.com将允许用户登录该站点,而system.example.com将允许用户访问信息系统,而forums.example.com将允许用户访问论坛.
我们可能需要在子域之间传递信息,例如用户ID或用户首选项等.我们如何使用SESSION变量在sudomains之间传递信息?
编辑:我喜欢这个想法:
作为脚本中的第一件事:
ini_set('session.cookie_domain', '.example.com' );
Run Code Online (Sandbox Code Playgroud)
Shi*_*dim 14
PHP会话ID保存在Cookies中.要在所有子域中提供cookie,您需要将其分配给根域.然后所有子域将从cookie获取会话ID,PHP可以使用传递的会话ID查找会话.
事实证明,您只需要session.cookie_domain在php.ini文件中设置为根域
session.cookie_domain = ".example.com"
Run Code Online (Sandbox Code Playgroud)
另请参阅手册以了解用于设置ini条目的不同方法.
Che*_*ery 11
1)子域应使用相同的路径来保存会话文件
2)修改你的
php.ini中 session.cookie_domain = ".example.com"
或.htaccess php_value session.cookie_domain .example.com
或在脚本内部 ini_set('session.cookie_domain', '.example.com' );
我找到了解决问题的方法:
session_name("2620368ghwahw90w");
session_set_cookie_params(0, '/', '.mydomain.com');
session_start();
Run Code Online (Sandbox Code Playgroud)
这似乎没有问题.这是一种安全风险低的好方法吗?