我正计划开发一个网站,该网站将使用托管域名允许单个代码库来驱动网站的多个区域设置版本。
我的想法是,加载我的索引页面以查询我的数据库,以查看是否已通过定制管理系统将该特定主机名添加到白名单中。如果是这样,结果的站点信息行(名称,域,语言环境等)存储在会话变量中。
我的问题是:如果我确实将这一行存储在会话中,那么该会话是否也可用于所有其他“网站”(我不想要)?
我在会话中存储此信息的想法是,所以我不必在每个页面上查询我的数据库以获取站点详细信息。但是,如果所有托管域都可以访问会话,我将不得不重新考虑我的身份验证处理程序,因为它使用会话(不相关,我知道!)。
提前致谢。
答案 0 :(得分:0)
会话usually rely on cookies,只有在设置的域与您请求的资源域匹配时,浏览器才会发送Cookie。因此,即使您为所有不同的域使用相同的代码,只要该代码被不同的URL引用,您就可以了。
答案 1 :(得分:0)
有一种方法可以让所有托管域和子域都可以访问会话。 我正在寻找答案,但我没有找到......但是我写了一些解决了这个问题的代码:
session_set_cookie_params(0,"/",$_SERVER["SERVER_NAME"]);
$_SESSION['session.cookie_domain'] = $_SERVER["SERVER_NAME"];
祝所有未来发现者好运!