Mostrar links simbólicos E seus alvos na listagem de diretórios da web (apache)

3

A listagem de um conteúdo de diretório com ls -l mostra essa saída:

total 12
drwxr-xr-x 3 root root 4096 Dec 11 16:38 2.3
drwxr-xr-x 5 root root 4096 Dec 11 16:38 2.4
drwxr-xr-x 2 root root 4096 Dec 11 16:38 archive
lrwxrwxrwx 1 root root   10 Dec 11 16:38 current -> 2.4/2.4.1/
lrwxrwxrwx 1 root root   10 Dec 11 16:38 next -> 2.4/2.4.2/
lrwxrwxrwx 1 root root   10 Dec 11 16:38 previous -> 2.4/2.4.0/

Observe como mostra os links simbólicos e seus respectivos destinos.

Eu preciso saber se existe uma maneira de obter o mesmo comportamento na navegação do diretório apache.

Se o apache não é capaz disso, como eu suspeito, existe uma aplicação (FLOSS) fornecendo esse tipo de comportamento?

    
por Erwan Queffélec 12.12.2012 / 10:40

2 respostas

1

Procurei uma solução para esse problema no contexto de um pipeline de entrega contínua. No gerenciamento de repositório binário, as versões evoluem dessa maneira entre os estágios: beta - > rc - > estável.

Eu uso o Apache 2.2 para acessar o binário de qualquer servidor. Eu decidi usar o campo de descrição do índice do Apache.

Aqui está minha configuração:

1) Adicione uma indexação sofisticada no arquivo de configuração do host virtual (ou seja, / etc / apache2 / site-available / my- vhost)

<VirtualHost *: 80 >
...
  DocumentRoot /path/to/root
  IndexOptions FancyIndexing
...
</ VirtualHost>

2) crie um arquivo .htaccess no diretório raiz (caminho / para / raiz) contendo links simbólicos.

#              $version   $lifecycle
AddDescription "2.10.0.5" beta
AddDescription "2.10.0.4" rc
AddDescription "2.9.0.9" stable

3) Em seguida, use o SSH + sed para substituir "infile" o número da versão: aqui está um exemplo para o beta,

ssh user@server "cd /path/to/root; sed -i 's/AddDescription.*$lifecycle$/AddDescription \"$version\" $lifecycle/g' .htaccess" && {
  echo "Success."
} || {
  echo "Failed.";
}

É claro que isso requer alguns scripts, mas essa solução é suficientemente dinâmica para mim. .htaccess é levado em consideração dinamicamente pelo Apache.

O alvo do symlink é impresso na coluna de descrição.

Espero que isso ajude.

    
por 14.01.2015 / 17:24
0

Isso deve ser possível com as opções do mod_autoindex.

Veja as opções IndexOptions e IndexStyleSheet aqui .

    
por 12.12.2012 / 10:51