Я читал, подобный ответ вопросов отвечает, такие как этот. Но я все еще сталкиваюсь с одной проблемой, для которой я не нашел идеальное решение.
Моя ситуация следующие: Мне определили местоположение symfony4 проекта в var/www/project
. В рамках этого каталога существуют каталоги такой как scr
, config
, public
которые все принадлежат user:user
(который имеет корневой доступ). Всего один каталог в этом проекте, var
(в котором кэш и журнал хранятся), принадлежит www-data:www-data
, так, чтобы апач мог читать и записать в этот каталог.
Каждый раз, когда я должен очистить кэш, я должен работать php bin/console cache:clear
. Я не могу сделать этого как user
, из-за полномочий, которые установлены. Если я изменяю владение с sudo chown user:user var
, Я могу затем сделать, выполняет команду. Но апач не сможет считать файлы больше. Я мог затем изменить владение снова с sudo chown www-data:www-data var
и все работает снова, но мое предположение должно быть более легкое решение.
Информация о Addionional: каждый раз, когда php bin/console cache:clear
выполняется, все файлы в var
каталог установлен с полномочиями 664.
Я думал об изменении пользователя по умолчанию Apache к user
, но у этого пользователя есть корневой доступ, таким образом, это - плохая идея, я думаю. Как я должен решить это?
Возможно, user
учетная запись не добавляется к www-data
группа. Проверьте что user
учетная запись находится в www-data
группа путем выполнения следующей команды:
groups USER
(где ПОЛЬЗОВАТЕЛЬ является именем пользователя учетной записи), и проверяющий, если www-data
находится в списке возвращенных групп.
В противном случае добавьте user
к www-data
группа:
sudo usermod -a -G www-data USER
и проверьте снова.