首页 > Web开发 > 详细

ThinkPHP: session_save_path与systemd冲突错误!

时间:2015-03-26 13:10:20      阅读:275      评论:0      收藏:0      [点我收藏+]

thinkphp v3.2.3
在文件./thinkphp_3.2.3_full/ThinkPHP/Common/functions.php中,原来的代码:

  1. if(isset($name[‘path‘]))            session_save_path($name[‘path‘]);

应当修改一下:
  1. if(isset($name[‘path‘])) {

  2.             if(!file_exists($name[‘path‘])) {

  3.                 mkdir($name[‘path‘], 0777, true);

  4.             }

  5.             session_save_path($name[‘path‘]);

  6.         }

系统使用了systemd,在访问时出现会话文件找不到的错误!!!
修改的目的是让php-fpm自动创建目录,其创建的目录与要创建的目的目录并不一致,如自定义会话存储目录:
  1. session_save_path(‘/tmp/session‘);

系统实际创建的目录:
  1. /tmp/systemd-private-01c98cd0e1f343d0a2baa1783179df8b-php-fpm.service-zMJDw0/tmp/session

或者修改systemd配置,将PrivateTmp=true改为PrivateTmp=false,这样自定义目录和实际创建的目录就一致了,可以解决此类问题。


ThinkPHP: session_save_path与systemd冲突错误!

原文:http://my.oschina.net/epstar/blog/391945

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!