无法写入会话数据(文件)

无法写入会话数据(文件)

我正在尝试在我的 Debian Jessie 机器上设置一个功能齐全的 Apache2/PHP 网络服务器。

看来我无法处理会话变量。这些行不断重复出现/var/log/apache2/error.log

[Wed Oct 12 19:11:24.828962 2016] [:error] [pid 28677] [client 127.0.0.1:50153] PHP Warning:  session_start(): open(/var/lib/php5/sessions/sess_7o0m589ns0hhmafaht6cqvml35, O_RDWR) failed: Permission denied (13) in /home/nicoco/Documents/coloc-web/phpstorm-project/controller/main.php on line 2
[Wed Oct 12 19:11:24.829464 2016] [:error] [pid 28677] [client 127.0.0.1:50153] PHP Warning:  Unknown: open(/var/lib/php5/sessions/sess_7o0m589ns0hhmafaht6cqvml35, O_RDWR) failed: Permission denied (13) in Unknown on line 0
[Wed Oct 12 19:11:24.829489 2016] [:error] [pid 28677] [client 127.0.0.1:50153] PHP Warning:  Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php5/sessions) in Unknown on line 0

这很奇怪,因为文件权限看起来正常:

# ls -la
total 12
drwx-wx-wt 2 root   root   4096 oct.  12 17:50 .
drwxr-xr-x 4 root   root   4096 sept. 10 19:47 ..
-rw------- 1 nicoco nicoco  202 oct.  12 19:05 sess_7o0m589ns0hhmafaht6cqvml35

由于我对 Web 服务器管理和 PHP 都很陌生,所以问题可能出在我的 PHP 代码上...有什么提示吗?

答案1

我终于明白了。

正如评论指出的那样,文件权限根本不正确,我通过一个巧妙的方法解决了这个问题rm /var/lib/php5/sessions/*

之前用的是phpstorm自带的web server,后来换成了apache,感觉权限有点问题,现在觉得这个比较正常:

# ls -l /var/lib/php5/sessions/
total 4
-rw------- 1 www-data www-data 115 oct.  14 20:18 sess_jo5m5mu4q8kehebcmumv9o8bs0

相关内容