Não há diretório "melhor". E enquanto as pessoas podem argumentar que essa questão é subjetiva, ou que a colocação real dos arquivos não importa - e eles estão certos sobre o último - existem recomendações padronizadas sobre onde colocar o que no Unix- como sistemas.
O Padrão de Hierarquia do Sistema de Arquivos define isso e oferece a você o seguinte:
-
/var
- um local para colocar dados que mudam durante a operação normal, como logs, etc./var/www
é o diretório padrão para colocar o conteúdo da web para o Apache, mas seu uso não é padronizado e apenas o lugar "usual" que você colocaria porque as pessoas não alteram as configurações padrão com muita frequência. -
/srv
- este diretório deve conter dados que são servidos pelo sistema. Este é geralmente o lugar que você quer. A FHS explica:This main purpose of specifying this is so that users may find the location of the data files for particular service, and so that services which require a single tree for readonly data, writable data and scripts (such as cgi scripts) can be reasonably placed. Data that is only of interest to a specific user should go in that users’ home directory. (…)
One method for structuring data under
/srv
is by protocol, eg.ftp
,rsync
,www
, andcvs
Portanto, basta criar um diretório
/srv/www
e usá-lo. Você pode criar subpastas para cada host virtual que queira servir com sua máquina. -
/home
contém arquivos que realmente devem pertencer apenas a um usuário. O Apache, por exemplo, permite userdirs , para que você possa acessar os arquivos da web de um usuário por meio dehttp://example.com/~username
e Eles são servidos no diretóriopublic_html
na casa do usuário.Se você usa um servidor compartilhado entre várias pessoas e deseja permitir que todos hospedem seus próprios scripts, é para onde devem ir. Lembre-se de tornar os diretórios graváveis pelo usuário ao qual pertencem apenas.
Em essência, /srv/www
e /var/www
são diretórios nos quais você deve criar subdiretórios para qualquer projeto da Web que você queira hospedar. Você pode definir permissões diferentes nesses diretórios para permitir que determinados usuários ou grupos de usuários gravem neles. Se você tiver projetos para um usuário por vez, use /home
.