Pergunta

Eu tenho um Apache e Tomcat em execução e eu uso mod_jk para ligá-los. Eu tenho um trabalhador Tomcat chamado "TC1" e a seguinte configuração no meu VirtualHost:

JkMount   /* tc1
JkUnMount /*.png tc1
JkUnMount /*.gif tc1
JkUnMount /*.css tc1
JkUnMount /*.js tc1

Assim Tomcat atende a todos os pedidos de intervalo para os arquivos estáticos.

Agora eu quero usar mod_rewrite e fazer algo muito simples, tais como:

RewriteEngine On
RewriteRule ^/foo$ /bar [L]

para reescrever a exibição de página dinâmica em "/ foo" para "/ bar", mas ele não funciona porque todas as urls processados ??pelo mod_rewrite não acabar em mod_jk.

Eu li a documentação Apache Tomcat Connector e tentou tudo do JkOptions mas nada mudou.

Alguém sabe como resolver isso?

Será que a ordem de carregamento mod_jk e mod_rewrite e declarações ordenando desempenhar qualquer papel no processamento de URL?

graças

Foi útil?

Solução

Isso é estranho, porque, por padrão um RewriteRule envia um redirecionamento do lado do cliente, para que o cliente deve fazer um segundo pedido de bar / que deve ser travado por sua JkMount. Será que o seu programa de log de acesso mostram o pedido de /foo eo pedido de /bar também?

Tente esta regra em vez disso:

RewriteRule ^/foo$ /bar [PT,L]

Os meios "PT" "pass-through", e é um bodge reescrita que permite transformar o URL in situ e permite que outros módulos dar uma olhada no, sem enviar um redirecionamento.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top