Article ID: 7056, created on Sep 11, 2012, last review on May 11, 2014

  • Applies to:
  • Plesk 12.5 for Linux
  • Plesk 12.0 for Linux
  • Plesk 11.5 for Linux
  • Plesk 10.4 for Linux/Unix

问题

在 CGI 或 FastCGI 模式下,PHP 以域名 FTP 用户的权限进行运行。

可以在 "Web 主机设置" 页面上为每个域名配置 PHP 支持模式,进入 域名 -> domain.tld -> Web 主机设置:


还会出现以下 PHP 警告:

Warning: session_start() [function.session-start]: open(/var/lib/php/session/sess_vr12g68afa365jenb96han4k24, O_RDWR) failed: Permission denied (13) in /var/www/vhosts/<domain>/httpdocs/<script>.php on line <N>
Warning: Unknown: open(/var/lib/php/session/sess_vr12g68afa365jenb96han4k24, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0

原因

在 Parallels Plesk Panel  10.4 以前的版本中,PHP 配置在 /etc/php.ini 文件中进行设置而且默认设置如下的会话路径:
 
~# grep session.save_path  /etc/php.ini
session.save_path = "/var/lib/php/session"


该目录默认的权限值是 770:

~# ls -ld /var/lib/php/session
drwxrwx--- 2 root apache 65536 Dec 16 07:48 /var/lib/php/session
~#


因为 PHP 脚本于 CGI/FastCGI 模式中在 <ftpuser>:psacln 账户下运行,所以运行进程不能读取/写入以上目录,而会有效地获取会话文件。

解决方案

1. 升级 Parallels Plesk Panel 到 10.4 版本。

2. 为域名设置 自定义 PHP 配置

3. 在域名的 private 目录下创建一个子目录:

~# mkdir /var/www/vhost/domain.tld/private/php_sess
~# chown <ftpuser>:psacln /var/www/vhost/domain.tld/private/php_sess
~# chmod 0700 /var/www/vhost/domain.tld/private/php_sess


4. 编辑自定义 PHP 配置文件 php.ini 并覆盖如下显示的 session.save_path 指令:

~# grep session.save_path  /var/www/vhosts/domain.tld/etc/php.ini
session.save_path = "/var/www/vhosts/domain.tld/private/php_sess"

a914db3fdc7a53ddcfd1b2db8f5a1b9c 29d1e90fd304f01e6420fbe60f66f838 dd0611b6086474193d9bf78e2b293040 56797cefb1efc9130f7c48a7d1db0f0c e8756e9388aeca36710ac39e739b2b37 742559b1631652fadd74764ae8be475e e335d9adf7edffca6a8af8039031a4c7 2a5151f57629129e26ff206d171fbb5f 01bc4c8cf5b7f01f815a7ada004154a2 0a53c5a9ca65a74d37ef5c5eaeb55d7f

Email subscription for changes to this article