Я создаю сайт Drupal, который выполняет различные автоматические операции с диском с использованием пользователя apache (id = 40).
Проблема в том, что сайт был настроен на субдомене, принадлежащем ID пользователя 10001 (то есть моей основной учетной записи FTP), поэтому файловая система принадлежит этому ID пользователя.
Поэтому я продолжаю получать такие ошибки:
warning: move_uploaded_file() [function.move-uploaded-file]: SAFE MODE Restriction in effect.
The script whose uid is 10001 is not allowed to access /var/www/vhosts/domain.com/httpdocs/sites/default/files/images/user owned by uid 48 in /var/www/vhosts/domain.com/httpdocs/includes/file.inc on line 579.
Я попытался изменить группу apache в httpd.conf на apache: psacln, psacln - это группа по умолчанию для всех веб-пользователей, но это не помогло.
Сейчас ситуация такова:
Таким образом, очевидно, что uid 40 и 10001 имеют права на запись в любой из трех задействованных каталогов, но все еще не могут.
Я что-то упустил? Кто-нибудь может помочь?
РЕДАКТИРОВАТЬ
Решением было просто настроить домен / поддомен на использование apache в CGI-режиме, а не прямо из коробки.
Спасибо!
У меня тоже была эта проблема с Drupal.
Решил, отключив безопасный режим php. Это можно сделать через Plesk или вручную, отредактировав свой httpd.include в каталоге conf домена, в котором запущен drupal, а затем запустив apache2ctl изящный.
Какую версию Plesk вы используете? Возможно, вы можете изменить сайт, чтобы использовать PHP-CGI для сайта, чтобы любые скрипты PHP запускались от имени пользователя FTP. Затем убедитесь, что все файлы в иерархии httpdocs принадлежат пользователю FTP. Может это поможет?