10

我刚刚通过托管方订购了一台 vps 服务器。这是带有 Plesk 11 的 CentOS。所以我刚刚在服务器上安装了 Zend 应用程序,但现在错误日志显示

[Mon Apr 15 20:48:28 2013] [warn] [client 94.210.222.87] mod_fcgid: stderr: PHP Fatal error: Uncaught exception 'Zend_Session_Exception' with message 'Zend_Session::start() - /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php(Line:469): Error #2 session_start(): open(/var/www/vhosts/ontwerp.doedels.eu/tmp/sess_t2orkniqjn9rsn9m84d2clsdd1, O_RDWR) failed: Permission denied (13) Array 
[Mon Apr 15 20:48:28 2013] [warn] [client 94.210.222.87] mod_fcgid: stderr: /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php(Line:479): Error #2 session_write_close(): open(/var/www/vhosts/ontwerp.doedels.eu/tmp/sess_t2orkniqjn9rsn9m84d2clsdd1, O_RDWR) failed: Permission denied (13) Array 
[Mon Apr 15 20:48:28 2013] [warn] [client 94.210.222.87] mod_fcgid: stderr: /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php(Line:479): Error #2 session_write_close(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/www/vhosts/ontwerp.doedels.eu/tmp) Array' in /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php:482 

到目前为止我尝试了什么? 我尝试将 session.save_path 设置为 {DOCUMENTROOT}/tmp 和 {WEBSPACEROOT}/tmp 这似乎不起作用。

phpinfo 函数说 session.save_path = /var/www/vhosts/ontwerp.doedels.eu/tmp 这是一个好文件夹。路径存在且文件夹有 777 CHMOD 权限。

解决 方法 当我设置 session.save_path = {WEBSPACEROOT}/private/sess 时它似乎可以工作这是我使用 777 chmod 权限创建的文件夹,但它似乎不是一个永久的解决方案。因为我必须通过我所做的每个订阅来创建这个文件夹。

我肯定知道什么?

  • 文件夹未满
  • 该文件夹确实存在
  • 文件夹有写权限 777
  • 文件夹所有者为 0
  • 在 fastcgi 模式下运行服务器
4

3 回答 3

7

您需要为您的 var 目录设置权限。这似乎是问题所在。

于 2013-04-15T18:56:30.647 回答
3

会话文件夹上的默认所有权可能不正确:示例;Amazon Linux 上的 php-fpm7.0 默认为 apache 用户。如果使用 nginx 或其他需要切换文件夹所有权。另请注意,您必须更改 www.conf 中的用户/组设置。

chown -R root:nginx /var/lib/php/7.0/
sed -i 's/apache/nginx/g' /etc/php-fpm-7.0.d/www.conf
service php-fpm-7.0 restart
于 2017-01-26T22:41:05.990 回答
0

在 Plex 面板中,转到软件 > 选择 PHP 版本 > 切换到 PHP 选项。将 session.save_path 值设置为 /tmp

强制会话路径丛https://flagon.digital/blog/others/failed-write-session-data#solution__defaultpath中找到

于 2020-03-06T13:46:17.620 回答