我在Web应用程序(OpenCart)的日志文件中发现以下错误。有没有人见过这个?或者我可以忽略这个“有点已知的错误”?我尝试关注此特定错误的其他帖子,但没有成功:
PHP注意:session_start():ps_files_cleanup_dir:opendir(/ var / lib / php / session)失败:权限被拒绝(13)
在该专用服务器的会话文件夹中,我看到:
-rw------- 1 apache apache 48 Mar 5 19:21 sess_0pl62elpgn43rjakfh6em2v2n5
-rw------- 1 apache apache 48 Mar 5 19:33 sess_2vo41urqek50ef9nl1429879i3
-rw------- 1 apache apache 125 Mar 5 18:59 sess_35goisejg3asq4n4hntcsgofu6
-rw------- 1 apache apache 48 Mar 5 19:16 sess_4cgkdiqfqgfgje356uoem0r7s3
-rw------- 1 apache apache 48 Mar 5 19:33 sess_5ji1i4kppt6ara43v8jdflcgh6
-rw------- 1 apache apache 48 Mar 5 19:34 sess_5sbl2o6ndpphh8jqogrb12v6j1
.
.
LAMP,CentOS 5,PHP 5.2
答案 0 :(得分:5)
要修复 ps_files_cleanup_dir:opendir(/ var / lib / php / sessions)失败:权限被拒绝 问题,我建议以下两件事:
向该操作系统授予对该特定文件夹(/ var / lib / php / sessions)的写访问权。
$ sudo chmod 755 / var / lib / php / sessions
另一个好的解决方案是使用php.ini中的session.save-path为会话文件夹设置一个自定义位置(PHP解释程序可以将会话文件写入该位置)。
注意:使用session.gc_probability = 0禁用PHP的会话垃圾收集器不是一个好的解决方案,因为在会话文件夹中会有很多孤立的会话文件,而且将浪费磁盘空间并降低服务器速度。
答案 1 :(得分:0)
如果您的httpd服务器用户/组是www-data.www-data,请更改:
chown -R www-data.www-data /var/lib/php/sessions
这应该授予httpd服务器打开目录opendir的权限。
答案 2 :(得分:-2)