Como eu escrevo uma regra de reescrita para um host virtual no Apache?

0

Eu tenho um servidor subversion que está funcionando bem; no entanto, comprei uma ferramenta que requer que o projeto tenha um subdiretório "branches" e seja sensível a maiúsculas e minúsculas. Todo o repositório já tem projetos com uma pasta "Branches", então estou tentando escrever em uma reescrita para o arquivo httpd.conf. Eu tenho o LoadModule descomentado e liguei o RewriteEngine, o Apache é iniciado, mas eu não obtenho o resultado desejado.

RewriteRule ^/Root/(.+)/branches(.*)  /Root/$1/Branches$2

Se eu usar um RedirectMatch, ele funciona no navegador, mas ainda não funciona na ferramenta.

RedirectMatch ^/Root/(.+)/branches(.*)  /Root/$1/Branches$2 

Eu entendo que o Rewrite normalmente reescreve para um arquivo ou local físico, mas eu já vi um exemplo semelhante ao tentar resolver o meu. Estou aberto a outras abordagens, examinei o < Se > mas está além de mim.

    
por Monso 18.09.2013 / 22:25

1 resposta

0

Finalmente descobri

    RewriteRule ^/Root/(.+)/branches(.*)  http://svn/Root/$1/Branches$2 [P]

Como é virtual, eu precisava incluir o URL da Web absoluto. Sem o sinalizador [P] (proxy), ele estava retornando um redirecionamento 302, com o sinalizador apenas o servidor manipula a solicitação e o cliente simplesmente retornava a página correta da solicitação única.

    
por 24.09.2013 / 21:59