O que eu recomendo fazer tem sido principalmente descrito nesta questão do Ask Ask .
Para este caso em particular, eu instalaria o suPHP que, em resumo, permite que você execute scripts PHP como seu usuário no Apache.
Ao fazer o seguinte:
sudo chown -R youruser:youruser /var/www
find /var/www/ -type d -exec chmod 0755 {} \;
find /var/www/ -type f -exec chmod 0644 {} \;
Instale suphp-common
e libapache2-mod-suphp
de este ppa (O que são os PPAs e como usá-los? )
Desativar mod_php5
e ativar mod_suphp
sudo a2enmod suphp
sudo a2dismod php5
Atualize seus hosts virtuais para incluir essa linha na parte inferior deles:
suPHP_UserGroup youruser youruser
Substituindo youruser
pelo usuário usado para editar arquivos no servidor. Reinicie o Apache.
Deste ponto em diante, o Apache irá executar todos os scripts php que são seus usuários, o que significa que eles podem pertencer ao seu usuário / grupo e não há necessidade de usar permissões loucas como 777 . Como tudo é executado como seu usuário, todos os arquivos criados pelos scripts php também serão de propriedade do usuário! Existem muitas outras coisas legais que você pode fazer com o suPHP; no entanto, pelo que parece, isso é tudo que você precisa para começar.