Fazer com que a saída de + Indexes corresponda a um URL reescrito

1

Estou usando mod_rewrite para mapear /foo/bar/baz para /foo/qux usando

RewriteEngine on
RewriteBase /foo/
RewriteRule ^bar/baz$ bar/baz/ [L,R=permanent]
RewriteRule ^bar/baz/(.*) qux/$1 [L]

Eu quero permitir índices em /foo/qux , então eu tenho Options +Indexes em /foo/qux/.htaccess .

O problema é que a saída do índice mostra " Index of /foo/qux " mesmo quando a URL usada para acessá-la é /foo/bar/baz . Idealmente, gostaria que a saída refletisse a URL usada (assim, /foo/qux ou /foo/bar/baz , dependendo). Eu me contentaria com a saída sempre dizendo "Índice de /foo/bar/baz ". Existe uma maneira de fazer isso usando mod_rewrite ou opções de configuração simples do Apache?

    
por Chris Conway 05.06.2009 / 14:46

2 respostas

2

Esta não é uma opção de configuração pura do Apache, mas, como alternativa, você poderia substituir os Rewrites por links simbólicos no sistema de arquivos real. Com o Linux, você usaria:

ln -s <target> <link_name>
    
por 05.06.2009 / 17:17
1

Não acredito que seja possível, devido à ordem em que mod_rewrite e mod_autoindex processam a solicitação. O caminho que mod_autoindex recebe é e deve ser o caminho "real".

A solução alternativa de links simbólicos de Kyle é a única solução que conheço.

    
por 05.06.2009 / 17:58