我会尽力解释它。 我试图解决这个问题好几天了,我只是不知道出了什么问题。
首先,我正在打开一个由函数创建的简单“对话框”。
我们现在称它为openDialog
。
在我的子域中,我正在用这个函数打开注册对话框,
而函数确实是,使用ajax来读取寄存器对话框的内容。
有了它,我可以毫无问题地进行注册。
该寄存器正在我的主服务器(example.com)和论坛的子域上运行。 (forum.example.com)
登录工作原理相同。我在ajax和其他东西中查询了。 问题出在这里:在主站点(example.com)中,登录正在设置cookie。 但是,在子域(forum.example.com)中,ajax对mysql执行相同的查询(上次登录日期等等), 但是setcookie没有用。
我正在使用chrome,我在网络选项卡(开发者模式)中看到,我确实看到ajax响应创建了cookie,但cookie并未真正创建。
这是setcookie:
setcookie("mycoockiename", 'myvalue', time() + 60 * 60 * 24 * 365, '/', '.example.com');
当我进入chrome开发者模式(按F12键)然后进入网络选项卡> ajax请求,在Headers选项卡中我可以看到:
Set-Cookie:mycoockiename=myvalue; expires=Sun, 18-Jan-2015 21:05:20 GMT; path=/; domain=.example.com
太好了,这意味着我已成功创建了cookie吗? 好吧,不。它并没有真正创造它。
你们知道这一点很重要。它只发生在(example.com)的子域(forum.exapmle.com)中,一切正常。 在(forum.example.com)中除了setcookie之外一切正常。
另请注意,虽然我通过主站点(example.com)创建此cookie,但我也可以在(forum.example.com)中看到此cookie
那么,对于为什么有任何想法?
答案 0 :(得分:0)
修正了它,我刚用javascript创建了缺少的cookie。