Tentando implantar o Symfony no Ubuntu 18.04 LTS - setfacl não funciona?

3

Aviso: perguntou isso no StackOverflow mas é meio urgente e eu não estou recebendo nenhuma resposta e eu acho que ServerFault pode ser o melhor lugar para postar isso de qualquer maneira. Se eu receber uma resposta aqui, vou deletar a outra.

Estou seguindo o guia aqui (admitidamente é um pouco datado) para implantar meu primeiro projeto do Symfony 4 para produção. Tudo estava indo bem até que eu cheguei às permissões de arquivo. Eu fiz as etapas especificamente na Etapa 4 do link:

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

Isso me dá

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::---

e

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::---

No entanto, quando vou executar o aplicativo da web, recebo uma página em branco e o log de erros mostra

[crit] 3116#3116: *12 stat() "/var/www/html/project/public/" failed (13: Permission denied)

Então parece que o setfacl não está funcionando? O que eu estou fazendo errado aqui? Existe um guia melhor para permissões?

EDITAR: Acabei de ler aqui isso:

To use ACL, it's necessary to use filesystems which can use ACL function like ext2/ext3/ext4 or xfs and also necessary to enable ACL option on those filesystems.

Minha unidade é criptografada (feita durante a instalação). Poderia ser por isso que isso não está funcionando? Se este for o caso, que alternativas eu teria?

    
por Element Zero 22.10.2018 / 02:58

1 resposta

3

Dado que o usuário www-data não é membro do grupo myuser , ele exige que as permissões +x passem pelo diretório /var/www/html . As permissões existentes na pergunta são "750". Para mudar isso:

chmod o+x /var/www/html
    
por 22.10.2018 / 04:52