Apache server-status ao executar como servidor proxy

2

Estamos executando o apache como um servidor proxy e temos o tomcat atrás do apache. Estamos usando o módulo server_status, mas quando tentamos acessar server_status como em https://host.com/server-status ele redireciona para o tomcat e obtemos o erro 404. Eu sou muito novo nisso, tentei passar pelos documentos do apache, mas não consegui descobrir a solução. Temos o SSL ativado

Configurações atuais do ssl.conf:

  ProxyRequests     Off
  ProxyPreserveHost On

  <Proxy http://localhost:8081/*>
      Order deny,allow
      Allow from all
  </Proxy>

  ProxyPass         /  http://localhost:8081/
  ProxyPassReverse  /  http://localhost:8081/
  ProxyPassReverse   /  http://myhost:8081/


    <Location /server-status>
            SetHandler server-status
            Order deny,allow
            Deny from all
            Allow from 10.90
    </Location>

Após alterações sugeridas

 ProxyRequests     Off
 ProxyPreserveHost On

<Proxy http://localhost:8081/*>
    Order deny,allow
    Allow from all
</Proxy>

ProxyPass         /server-status !
ProxyPass         /  http://localhost:8081/
ProxyPassReverse  /  http://localhost:8081/
ProxyPassReverse   /  http://myhost:8081/

Editar 2:

A mudança foi necessária para o httpd.conf e eu adicionei o ProxyPass /server-status ! na diretiva para a configuração do módulo proxy e ele funciona.

    
por f-z-N 09.06.2014 / 15:36

2 respostas

3

Você pode usar ! na diretiva ProxyPass para exceções de proxy. Algo como

ProxyPass /server-status !

deve fazê-lo.

Veja a documentação do apache para a diretiva ProxyPass para saber mais: link , especialmente

The ! directive is useful in situations where you don't want to reverse-proxy a subdirectory, e.g.

    
por 09.06.2014 / 15:49
0

Eu tinha muitos sites e alguns deles tinham 'Redirect permanent'. Por alguma razão, não funciona (pelo menos para mim).

Eu uso o / server-status para monitoramento, então eu só tive que me conectar a ele de outro servidor dentro da LAN local. Então eu criei um Vhost extra com o IP local como o ServerName assim:

<VirtualHost *:80>
   ServerName   <<local_server_ip>>
   ServerAlias  <<local_server_ip>>
   ServerAdmin  [email protected]

        DocumentRoot "/var/www/html"

    Options Indexes FollowSymLinks
</VirtualHost>

Eu não sou especialista, mas funcionou para mim.

    
por 16.09.2015 / 12:09