【发布时间】:2013-06-22 06:55:57
【问题描述】:
带有 Webmin、Apache Centos 6、Laravel 应用程序和旧数据库模式的新 VPS 服务器。在旧的共享主机上一切正常,但由于某种原因在 VPS 上 Laravel 的会话存储(Laravel 3.0)不再适用于 Safari 或 Internet Explorer。
似乎会话 ID 没有保存在客户端上。强制 Laravel 会话 ID 保存在客户端浏览器上的好方法是什么?
当 Chrome/Firefox 看起来运行良好时,Safari/IE 存储 cookie 的方式可能会导致此问题有什么区别?
【问题讨论】:
-
我在相同的设置下遇到了这个确切的问题:Apache2.2、PHP 5.4.17、Laravel 4.0.x 都在 Centos 6.4 上运行。在 localhost 上工作正常,但在服务器上 IE 和 Safari 不接受或发送任何会话 cookie。整个上午都被这件事弄糊涂了……
-
我非常擅长对浏览器中的会话 cookie 进行故障排除。这个问题让我很感兴趣。我以前从未与 Laravel 合作过,但如果我能重现你的问题,我很可能会给你一个答案。默认情况下,Laravel 使用本机会话驱动程序,因此不难排除故障。要么向我发送有关如何重现的程序,要么给我一个页面链接,以便我可以查看它在不同浏览器上的行为。
-
嗨,Ray,我会为你整理一些额外的数据,特别是 IE 和 Safari 上跨两个测试主机的网络输出,请耐心等待。
-
您需要提供有关您的问题的更多信息。如果您阅读 php.net 上的会话文档,您将了解 php 中的会话可能会出现许多问题。它甚至可能与框架无关。我建议您关闭自动启动并熟悉php session configuration,正确设置域名、会话名称,确保您对会话存储文件夹具有写入权限,最重要的是,确保在开始之前加载您存储的会话对象类会议!
标签: php laravel session-cookies laravel-3 missing-cookies