Para conceder ao usuário mywebsite
permissão de leitura / gravação em /var/www/html/mywebsite
:
chown -R mywebsite /var/www/html/mywebsite
Isso deve ser suficiente. Você não deve ter que alterar o proprietário ou as permissões do grupo, porque o proprietário do usuário deve receber permissões de leitura / gravação já.
Se você quisesse conceder uma permissão de leitura / gravação em grupo dentro dessa pasta, digamos, grupo my-group
, você precisaria:
chgrp -R my-group /var/www/html/mywebsite
chmod -R g+w /var/www/html/mywebsite
Notas importantes
-
Não defina a propriedade (usuário ou grupo) dos arquivos em
/var/www
para o usuáriowww-data
. O ponto de ter o servidor da Web executado como o usuáriowww-data
é que essa é uma conta sem privilégios , incapaz de modificar os arquivos. Se você definir alguns arquivos para pertencer a esse usuário, estará negando essa medida de segurança. Se você precisar que o seu servidor web possa modificar certos arquivos, apenas defina a propriedade para esses arquivos em particular e seja muito cuidadoso para não permitir a execução direta (ex. Via PHP) deles. Em geral, nunca configure para quewww-data
possa modificar arquivos. -
Ao fazer um
chmod
recursivo, geralmente é melhor usar letras do que números, por exemplo,chmod -R g+w something
em vez dechmod -R 770 something
. Isso ocorre porque o primeiro é capaz de modificar apenas a permissão desejada e deixar os outros. Por padrão, os diretórios e arquivos terão permissões de "execução" diferentes - os arquivos desativados (por exemplo, 644) e os diretórios ativados (por exemplo, 755), porque essas permissões têm um significado diferente para os diretórios. Se você fizerchmod -R 770 something
, os arquivos regulares terão permissões de execução ativadas. Em geral, é uma boa ideia modificar apenas o que você precisa.Outra coisa a notar é que
770
removeria a permissão legível para o mundo, o que impedirá que o servidor da Web (que é executado como um usuário sem privilégios) possa lê-lo. Nesse caso, também está impedindo que o usuáriomywebsite
consiga ver o diretório/var/www/html/mywebsite
, porque você configurou o diretório pai/var/www/html
para 770.