3

我有几个用户收到此 CookieStore::CookieOverflow 错误。

我对 nginx/passenger 持怀疑态度,因为我上周刚切换到那个(从 nginx/thin),现在这些正在发生。

它始终是一个特定的操作,但并非对所有用户都发生。我检查了我在会话中存储的内容,我没有保存任何大对象,只是几个 id 和几个布尔值。

如果我在会话中存储大对象,我希望所有用户都有这个错误。

有关如何解决此问题的建议将很有帮助。

4

2 回答 2

2

跟踪和调试 CookieStore::CookieOverflow 错误并不简单。您应该尝试在站点上复制完全相同的用户活动。

修复错误的一些建议: * 切换到更可扩展的 cookie 存储,例如 ActiveRecord 或 Memcached * 尝试减少会话中存储的元素数量

另请注意,闪存消息存储在 session 中。如果您发回一个非常长的 flash 消息文本,您可能会遇到 CookieOverflow 错误。

于 2009-10-30T13:14:34.267 回答
1

会话中存储的三个 Date 对象导致了这种情况。从会话中删除它们可以阻止错误的发生。

于 2009-11-01T02:39:40.807 回答