Configure o Apache + Tomcat + SSL, mas não saiba como usar SSL para solicitações não-Tomcat

1

O título é um pouco confuso, então aqui estão alguns detalhes: Eu tenho um servidor Tomcat rodando no 8080 que precisava ser protegido. Eu configurei o Apache para finalizar SSL e proxy para o Tomcat, assim (o que eu acho que fiz corretamente):

ProxyRequests       off
ProxyPreserveHost   on
ProxyPass           /jira   http://localhost:8080/jira
ProxyPassReverse    /jira   http://localhost:8080/jira

<VirtualHost _default_:443>
    SSLEngine on

    ProxyPass           /   http://localhost:8080/
    ProxyPassReverse    /   http://localhost:8080/
</VirtualHost>

Isso funcionou como esperado, exceto que agora quero proteger outros diretórios no meu servidor web, por exemplo, um repositório do Mercurial. Quando eu crio o referido Directory e exijo SSL, o pedido é encaminhado para o Tomcat (assim como eu disse para ... que neste caso não é o que eu quero).

Então, minha pergunta é: como eu mudo minha configuração para que eu possa encaminhar apenas certas solicitações para o servidor Tomcat?

Solução atualizada por resposta de Shane:

<VirtualHost _default_:443>
    SSLEngine on

    ProxyPass / !
    ProxyPass           /jira   http://localhost:8080/jira
    ProxyPassReverse    /jira   http://localhost:8080/jira
</VirtualHost>

Faz sentido fazer dessa maneira, desde então eu estou apenas fazendo o proxy dos aplicativos que preciso.

    
por heyseuss 20.10.2011 / 19:51

1 resposta

1

Use as isenções ProxyPass antes de suas configurações existentes para evitar a intermediação por proxy de determinados locais:

ProxyPass /location/to/not/proxy !
ProxyPass /other/location/to/not/proxy !
...
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
    
por 20.10.2011 / 20:07

Tags