帮助!在服务器上存储会话 Cookie,但没有垃圾收集
我使用的是 PHP 5.2,并且位于共享主机上,因此我决定将会话 cookie 存储在我自己的文件夹中,但似乎没有任何垃圾收集。 cookie 存储在那里并且永远不会被删除。我该如何解决这个问题?我正在使用的代码是
session_save_path('../example.com/sessions/');
ini_set('session.gc_probability', 1);
I am using PHP 5.2, and I am on a shared host, so I have decieded that i want to store the session cookies, in a folder of my own, but there doesn't seem to be any garbage collection. The cookies are stored there and never deleted. How can i fix this? the code I am using is
session_save_path('../example.com/sessions/');
ini_set('session.gc_probability', 1);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
另一部分是 session.gc_divisor< /a> 配置选项。默认值 100 将为您提供 1% 的机会 (gc_probability / gc_divisor) 在任何会话启动时发生垃圾收集。
要强制垃圾收集始终发生,请尝试使用:
一旦验证垃圾收集器确实按预期工作,您应该为这些设置选择合理的值。 1 - 10% 就可以了。
The other part of this is the session.gc_divisor config option. The default value of 100 will give you a 1% chance (gc_probability / gc_divisor) of garbage collection happening on any session start.
To force garbage collection to ALWAYS happen, try using:
Once you've verified that they garbage collector is indeed working as intended, you should select reasonable values for these settings. 1 - 10% is fine.
你的 session.gc_divisor 设置为多少?如果为 10000,则垃圾收集器启动的概率将非常低。如果是默认值,则为 100。那么收集器启动的可能性为百分之一。多次点击该页面,看看它是否清除。
或者将概率设置为 100 或除数为 1。无论哪种方式,它都会每次运行。这有点矫枉过正,但它应该可以帮助您确定它是否有效。然后适当设置一下。
What is your session.gc_divisor set to? If its 10000 the probability of the garbage collector starting will be pretty low. If its default, 100. Then there is a 1 in 100 chance the collector will start. Hit the page a ton of times, see if it clears.
Or set the probability to 100 or the divisor to 1. Either way, then it will run EVERY time. Which is overkill, but it should help you find out if its working. Then set it appropriately.