« 给drupal增加多用户自定义模版的功能 | Main | 从apache扒出来一段string代码 »

drupal 在 php5.2.0 下session丢失的处理办法

作者:virushuo 发表于 2007-02-14 04:02 最后更新于 2007-03-02 22:03
版权声明:按照by-nc-sa的cc协议可转载,拒绝采用“独家” 授权媒介(含网站和平面媒体)转载、引用、链接,除非获得本人许可。转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。


php 5.2.0中,drupal的session总是被设置为uid 0 由此造成了用户无法登录和获得权限。

这似乎是5.2.0中改动的内存管理所导致的。

解决方法很简单,用session_write_close() 即可。

在index.php的 drupal_page_footer(); 之后,加上1行: session_write_close();

就可以了。

http://drupal.org/node/92802

这里有更详细的讨论。

update: 更简单,更可靠的办法:

修改includes/session.inc
在function sess_read($key) 中,加上:
register_shutdown_function('session_write_close');

相关文章:
blog comments powered by Disqus
CC License. Some rights reserved.
署名·非商业用途·保持一致
本站之所有未作特别说明的内容均使用 创作共用协议.
POWERED_BY_MT_3.2