我在 Chrome 和 Firefox 上遇到了一个奇怪的问题,改变它可以正常工作 IE。[ Edit1:IE有时也会出现问题]
前提:
- 在我的 homepageView.php 中,我使用 jQuery 创建了一个 cookie,比如 Cookie1。
- 我的主页有一个应用程序的链接,我们称之为 App1。
- Cookie1 在 App1 的控制器中被访问,如果没有找到它会重定向回主页。
问题陈述
- 清除缓存
- 转到主页(已创建 Cookie1)
- 单击指向 App1 的链接。
- App1 被重定向到主页(App1 无法访问 Cookie1)
- 再次点击 App1 链接,App1 工作正常。
片段
主页视图.php
createCookie('loggedin_ind', true);
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else{
var expires = "";
}
document.cookie = name+"="+value+expires+"; path=/";
}
App1Contoller.php
function index()
{
if(isset($_COOKIE["loggedin_ind"]))
{
//Display App1
}
else
{
redirect('http://localhost/Sitename');
}
}
任何人都可以请建议为什么 cookie 仅在第一次不被写入(通过 jQuery)或不被读取(通过 php)?从第二次开始它工作正常。
它在我的本地主机上也可以正常工作,仅当代码迁移到服务器时才会出现问题。
Edit2:我用session替换了cookie逻辑,但问题仍然存在。
Edit3:我有一种强烈的感觉,这是一个与服务器相关的问题。我在我的 hostgator 共享主机上托管了相同的代码,它在那里工作正常,这个问题只发生在我的 godaddy VDS 上。谁能建议我如何检查我的两个服务器上的 cookie/会话处理方式是否不同。谢谢。
非常感谢任何帮助。谢谢。