Article ID: 7056, created on Feb 24, 2012, last review on Sep 19, 2014

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

Эта проблема была полностью устранена в Plesk 10.4. Если вы обновляетесь до версии 11.x или 12, пожалуйста, игнорируйте это предупреждение. Оно выдается, если неправильно заданы права на папку '/var/lib/php/session/'. Обновление исправляет эти права.

Симптомы

В режиме CGI или FastCGI PHP использует полномочия FTP-пользователя домена.

Режим поддержки PHP для того или иного домена можно настроить на странице Домены -> имя домена -> Настройки веб-хостинга:

Кроме того, могут появиться следующие предупреждения 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 
**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

Причина

В 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
~#

Так как в режиме CGI/FastCGI сценарии PHP обрабатываются под учетной записью <ftpuser>:psacln, процесс не имеет прав на чтение/запись этой папки и поэтому использует файл сеанса.

Решение

1. Обновите Parallels Plesk Panel до версии 10.4.

2. Создайте индивидуальную конфигурацию PHP для домена.

3. Создайте подпапку в папке private этого домена:

~# mkdir /var/www/vhosts/domain.tld/private/php\_sess
~# chown &lt;ftpuser&gt;:psacln /var/www/vhosts/domain.tld/private/php\_sess
~# chmod 0700 /var/www/vhosts/domain.tld/private/php\_sess

4. В созданном конфигурационном файле РНР 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
Save as PDF