Отказ от ответственности: я уже спросил это на StackOverflow но это как бы срочно, и я не получаю ответов, и я полагаю, что ServerFault может быть лучшим местом для публикации в любом случае. Если я получу здесь ответ, я удалю другой.
Я слежу за гидом Вот (правда, это немного устарело) для развертывания моего первого проекта Symfony 4 в продакшене. Все шло хорошо, пока я не добрался до разрешений для файлов. Я выполнил шаги, указанные в шаге 4 ссылки:
sudo chown -R myuser:myuser /var/www/html
sudo chmod -R 750 /var/www/html
sudo setfacl -R -m u:www-data:rX /var/www/html/project
sudo setfacl -R -m u:www-data:rwX /var/www/html/project/var/cache /var/www/html/project/var/log
sudo setfacl -dR -m u:www-data:rwX /var/www/html/project/var/cache /var/www/html/project/var/log
Это дает мне
getfacl /var/www/html/project
# file: var/www/html/project/
# owner: myuser
# group: myuser
user::rwx
user:www-data:r-x
group::r-x
mask::r-x
other::---
и
getfacl /var/www/html/project/var/cache
# file: var/www/html/project/var/cache
# owner: myuser
# group: myuser
user::rwx
user:www-data:rwx
group::r-x
mask::rwx
other::---
default:user::rwx
default:user:www-data:rwx
default:group::r-x
default:mask::rwx
default:other::---
Однако, когда я запускаю веб-приложение, я получаю пустую страницу, а в журнале ошибок отображается
[критический] 3116 # 3116: * 12 stat () "/ var / www / html / project / public /" не удалось (13: в доступе отказано)
Так кажется, setfacl не работает? Что я здесь делаю не так? Есть ли лучшее руководство для разрешений?
РЕДАКТИРОВАТЬ: Я только что прочитал Вот который:
Чтобы использовать ACL, необходимо использовать файловые системы, которые могут использовать функцию ACL, например ext2 / ext3 / ext4 или xfs, а также необходимо включить опцию ACL для этих файловых систем.
Мой диск зашифрован (выполняется во время установки). Может быть, поэтому это не работает? Если это так, какие у меня есть альтернативы?
Учитывая www-data
пользователь не является членом myuser
группа, это требует +x
разрешения на спуск через /var/www/html
каталог. Существующие разрешения в вопросе - «750». Чтобы изменить это:
chmod o+x /var/www/html