当前位置: 首页 > 面试题库 >

PHP:Cookie域/子域控件

方增
2023-03-14
问题内容

我正在一个具有多个子域的站点上,其中一些应该具有自己的会话。

我想我已经解决了,但是注意到了一些我不理解的关于cookie处理的信息。我在文档中看不到有任何解释它的内容,因此我想我可以看看这里是否有人对此问题有所了解。

如果我只是这样做:

session_start();

我最终得到了这样的会话cookie:

subdomain.example.net

但是,如果我尝试自己设置Cookie域,无论是

ini_set('session.cookie_domain', 'subdomain.example.net');

或喜欢

session_set_cookie_params( 0, "/", "subdomain.example.net", false, false);

我最终获得了.subdomain.example.net的Cookie(请注意开头的圆点),我认为这意味着“匹配所有子域(或本例中的子子域)。

这似乎发生在我所有的cookie上,而不仅仅是会话。如果我自己设置cookie域,它将自动在前面加上点号,表示该域及其所有子域。如果我未设置域,则仅使用当前域即可正确处理。

知道是什么原因造成的,我该怎么做才能控制该前置点?

谢谢!


问题答案:

PHP的cookie函数会自动在$
domain前面加一个点。如果您不希望出现这种情况,可以使用标头函数。例如:

header("Set-Cookie: cookiename=cookievalue; expires=Tue, 06-Jan-2009 23:39:49 GMT; path=/; domain=subdomain.example.net");


 类似资料:
  • 主要内容:示例子域是域名的扩展名,可以转发到URL或指向主机帐户或不同服务器中的IP地址和目录。 子域功能与主域名分开。 我们可以使用子域创建网站的区域。 示例 可以在网站上创建一个名为“移动端”的博客子域,例如:除了已经存在的 www.yiibai.com/m 之外,还可以通过URL - http://m.yiibai.com 访问该移动端网站。 理论上,我们可以为每个域名添加无限的子域名。 也可以添加多个子

  • 问题内容: 我需要编写一个函数来解析包含域名的变量。最好用一个示例来说明,变量可以包含以下任何内容: 但是当通过我的函数传递时,所有这些都必须返回example.com或example.co.uk,基本上是根域名。我敢肯定我之前已经做过,但是我已经搜索Google约20分钟了,找不到任何东西。任何帮助,将不胜感激。 编辑:忽略.co.uk,假定通过此功能的所有域都具有3个字母的TLD。 问题答案:

  • 子域是一个域,它是主域的一部分并存在于同一服务器中。 我们也可以说它是第二个网站,它位于主域之下,但它可能与根网站有任何关系。 我们可以在这个子域下运行一个新网站。 For Example - blog.wenjiangs.com是根域wenjiangs.com的子域,blog.tutorialpoint.com也可以通过tutorialpoint.com/blog访问。 创建子域 Step 1

  • 我有两个问题。我理解,如果我在cookie中指定域为(带前导点),那么所有子域都可以共享一个cookie。 是否可以访问在中创建的cookie(没有子域)? 如果在中创建,(没有子域)是否可以访问cookie?

  • 在本节中,我们将研究子域名。在互联网上我们到处都可以看到子域名,例如subdomain.target.com。常见的有,mobile.facebook.com,或者user.facebook.com。比如:mail.google.com,它也可以用于Gmail服务。子域名在很多情况下使用,网站为自己的用户提供子域名,例如,对于某些客户或员工,因此除非是某种VIP客户,否则不会对其进行广告宣传。我们

  • 我正在使用Node.js构建一个多租户应用程序,在这个应用程序中,具有自己子域的不同客户机将访问我的应用程序的一个实例。我的问题是: 有没有一种方法可以让应用程序发现用户在哪个子域上?这样,我就可以将用户路由到正确的数据库模式(postgresql)。 提前道谢! 其他信息: 我正在使用Express框架 我不使用多个实例,因为我希望有数千个以上的用户,而且我不想管理数千个实例。 关于子域,我的意