Veja @Lambert para parte da resposta. Você terá que permitir que o Apache siga links, porque se não for usado com cuidado, seguir links simbólicos pode permitir o acesso ao resto do sistema de arquivos, então o Apache não permite isso por padrão. A opção é Options FollowSymLinks
para um diretório.
Outra maneira (provavelmente mais limpa) de fazer isso é montar o bind. Um diretório com links simbólicos não é um diretório "verdadeiro" no sistema de arquivos (um link virtual é essencialmente apenas uma string que aponta para um local diferente) e o aplicativo sabe disso. Mas se você for mount --bind /origin/ /destination/
, é exatamente o mesmo que ter apenas o conteúdo de /origin/
em /destination/
. Se /destination/
não estava vazio, seu conteúdo original ainda está abaixo da montagem, e umount o revela.
Note que a montagem deve ser feita como root, e isso deve ser feito após cada inicialização (coloque em /etc/fstab
, assim como o resto das montagens). Casos de uso típicos são um pouco diferentes. Se você usar muitos links e religá-los com frequência, use links simbólicos. Se você precisar de uma renomeação / realocação estável e geralmente permanente de um diretório, use mount.