qual é o melhor diretório para armazenar arquivos / imagens enviados do meu site

4

Estou construindo uma página da Web na qual o usuário pode fazer upload de imagens. Eu vou usar o sistema de arquivos para armazenar minhas imagens. Eu queria saber qual é o melhor diretório para armazenar esses dados? é o diretório /var/ ? /srv/ diretório? ou talvez outro diretório?

    
por Ori Price 01.10.2015 / 20:55

2 respostas

3

Existem vários fatores a considerar antes de escolher um caminho de diretório. O melhor diretório é aquele que tem capacidade suficiente para armazenar o volume esperado de arquivos, que tem o nível certo de proteção e, finalmente, que não tem risco de ser substituído ou confundido por pacotes padrão.

/srv/www ou /srv/images estão bem especificados no padrão FHS enquanto /var/www ou /var/images não são recomendados:

Os aplicativos geralmente não devem adicionar diretórios ao nível superior de / var. Esses diretórios só devem ser adicionados se tiverem alguma implicação em todo o sistema e em consulta com a lista de discussão do FHS.

    
por 01.10.2015 / 22:54
2

Guarde-os onde quiser! Se é o seu sistema de arquivos, então é sua preferência. Apenas certifique-se de ter as permissões corretas no lugar.

Editar: Como afirma o @jlliagre abaixo, o acima é um exagero, pois há alguns locais de sistema de arquivos que seriam absolutamente inadequados para armazenar essas imagens.

Se você tiver vários usuários e quiser que eles tenham seu próprio diretório de imagens, sugiro algo como /home/[user]/images .

Se você quiser que todas essas imagens sejam facilmente acessíveis em um único diretório, eu faria algo como /var/www/img/user_uploads/[user] (ou algo semelhante, dependendo do sistema operacional).

As permissões são fundamentais, porque você deseja manter o nível correto de acesso para cada usuário e o processo de trabalho, limitando o acesso público àquele que deve permanecer privado para cada usuário.

Por padrão, alguns diretórios terão permissões públicas herdadas para diretórios filhos. Portanto, se você armazenar essas imagens em /home/[user]/public_html/images , toda a Internet terá acesso a essas imagens, a menos que você tenha tomado as medidas necessárias para evitar esse comportamento.

Dito isso, se você armazená-los em um diretório privado, como /home/user/images , o processo / usuário do servidor da Web precisaria de permissão explícita para acessar esse diretório.

    
por 01.10.2015 / 22:12