Bluehost(或PHP脚本)cookie问题


Bluehost (or PHP Script) Issue With Cookies

我遇到了cookie最奇怪的问题。我写了一些PHP脚本,使用令牌来识别访问者,以便"他/她"可以正确使用网站。

Token系统在本地开发机器(window +ZendApache)上运行良好,在Bluehost上的生产服务器上不起作用。

我使用"/"作为路径和"mydomain.com"作为域名设置cookie的有效期为60天。我可以在浏览器上正确地看到cookie,并且可以在与数据库中的值进行比较时确认设置的值是正确的。

每次页面刷新时,服务器不会获取cookie并创建一个新的令牌并将其发送回浏览器,并再次在数据库中创建一个新记录。新的cookie再次与最新的记录匹配,但下次刷新时,同样的事情又会发生。无法维持令牌,因此无法导航站点。

知道为什么会这样吗?有没有可能我错过了什么场景?

我已经在最新的Firefox, Opera, Safari和Chrome上进行了测试。

谢谢。编辑:

这是一个PHP &与Bluehost相关的问题,我以序列化格式在cookie的值上存储了3,40个字符的字符串。由于某些原因,unserialize()函数在Bluehost上没有执行,但在我的开发机器上运行得很好。因此,我将存储值更改为40char .40char。

再次感谢。

你应该使用

.mydomain.com

代替

mydomain.com
例如:

setcookie("MyCookie", $value, time()+60*24*3600, "/", ".mydomain.com", 1);