Adicione seu usuário ao grupo www-data e torne os arquivos readaptáveis.
# usermod -a -G www-data username
# chmod -R g+r /var/www/files
Eu tenho um site que escreve arquivos quando necessário. Esses arquivos são de propriedade da www-data. Eu também tenho meu usuário, que executa um aplicativo para coletar informações desses arquivos. Está escrito em Python. No entanto, como esses arquivos são de propriedade da www-data, meu aplicativo não pode lê-los e tenho que executar o aplicativo como root, o que prefiro não fazer. O que posso fazer para permitir que meu usuário leia os arquivos que o www-data cria?
EDIT , em relação aos comentários:
-rw-r--r-- 1 ivan www-data 444 2011-07-20 16:34 serverfile1.php
-rw-r--r-- 1 ivan www-data 140 2011-07-20 16:34 serverfile2.php
-rw-r--r-- 1 ivan www-data 478 2011-07-20 16:35 serverfile3.php
-rw-r--r-- 1 www-data www-data 10 2011-07-20 17:41 info1.txt
-rw-r--r-- 1 www-data www-data 21 2011-07-20 17:41 info2.txt
-rw-r--r-- 1 ivan www-data 236 2011-07-20 16:35 serverfile4.php
Ainda não consigo ler os arquivos info1 e info2 usando o usuário ivan
Supondo que a listagem de perm do arquivo seja precisa, o usuário ivan deve ter acesso a esses arquivos.
Você pode querer verificar o modo em que está abrindo o arquivo com o Python. Se você tentar abri-lo com privilégios de gravação, receberá erros.
Se, como ivan, você pode catar ou dirigir os arquivos info1 / info2, é mais provável que seja um problema de python / código.
Seus arquivos já podem ser lidos em grupo, se você estiver abrindo os arquivos para leitura, não deverá ter nenhum problema. Alguns deles já foram sugeridos, mas aqui estão algumas coisas para verificar.
Uma alternativa seria executar o php como fastcgi sob um usuário específico (php fastcgi + suexec).
tchau, stefano