Aqui está o meu problema. Estou desenvolvendo uma aplicação web em PHP / MySQL e estou tendo alguns problemas para configurar as contas que preciso usar.
Estação de trabalho de desenvolvimento: WinXP SP3, Eclipse PDT
Servidor de desenvolvimento: Debian 6.0, Apache2, MySQL 5, XDebug
Conectado através de uma LAN.
Enquanto estou desenvolvendo, carrego o código que precisa ser testado no servidor. Eu uso o GIT e o ssh: root @ myserver.
Como esperado, os arquivos acabam sendo de propriedade de root no servidor.
Meu aplicativo da Web precisa atualizar alguns dos arquivos. Para permitir que eu corri chmod no servidor para alterar a propriedade dos arquivos para www-data. Isso funciona bem.
O problema é que toda vez que eu modifico um arquivo e o carrego de novo ele volta para a propriedade root e eu tenho que alterá-lo manualmente para www-data.
Não acho que isso seja um problema no ambiente de produção, pois posso garantir que os arquivos tenham a propriedade correta quando forem publicados. No entanto, é uma dor o processo de desenvolvimento.
O que estou pensando:
1 - Eu provavelmente não deveria estar fazendo o upload com uma conta root. Tentei conectar-me ao servidor através do ssh usando o usuário www-data. No entanto, ele pede uma senha e depois de algumas leituras eu descobri que provavelmente não é uma boa idéia mexer com o usuário www-data.
2 - Eu provavelmente poderia criar outra conta para fins de desenvolvimento e fazer o upload dos arquivos com essa conta. O problema é que eu não sei como configurar meu aplicativo da web para usar essa conta ao conectar ao servidor e ao banco de dados.
3 - Eu provavelmente poderia configurar meu aplicativo e banco de dados para ser executado como root no ambiente de desenvolvimento. Isso resolveria o problema. No entanto, como afirmado em 2 acima, eu não sei como fazer isso e eu algo me diz que isso não seria uma boa idéia.
Estou procurando conselhos sobre como resolver meu problema. Eu poderia ir com qualquer uma das três alternativas acima (ou até mesmo uma quarta que eu não tenha considerado). Obrigado.
Atualização - 2011-09-13
Uma solução das respostas abaixo (obrigado cdp1337) é executar um script para atualizar as permissões de arquivo quando eu fizer o upload de arquivos para o servidor de desenvolvimento. No meu caso, eu poderia correr
chown -R www-data:www-data *
na raiz do meu site. NOTA: isso NÃO está no ambiente de produção e o servidor da web de desenvolvimento não pode ser acessado fora de nossa empresa. Esta não é uma solução para implantar no ambiente de produção.
Alguma outra ideia? Obrigado.