Navegador de proxy reverso não reconhecido / incompatível

1

Eu tenho a configuração de proxy reverso (apache2) que aponta para uma instalação do Cloud9. O proxy está funcionando corretamente no site Cloud9. Mas o Cloud9 requer uma versão específica do navegador e afirma que o navegador não é compatível. Eu testei com o último firefox e chrome.

Eu não tenho muita experiência com proxies do Apache e reversos, mas meu palpite é que o proxy está obscurecendo a versão do navegador. Como faço para encaminhar esta informação? ou falsificar uma versão de trabalho conhecida?

    
por Seth 01.12.2011 / 15:28

2 respostas

1

Ao inverter o proxy para um servidor backend usando o mod_proxy do apache, o servidor apache executa as solicitações padrão do Proxy HTTP em conformidade com a RFC 2616 para o servidor backend.

Isso significa que os dados exatos da solicitação (método, cabeçalhos e corpo) são passados para o back-end, com a adição de um cabeçalho X-Forwarded-For: que contém o IP do cliente original.

O Apache não "inventa" nada no pedido encaminhado.

Coloque uma página CGI no backend cloud9 que mostre todos os cabeçalhos de solicitação e compare-os com os cabeçalhos do seu navegador.

    
por 01.12.2011 / 15:39
1

O problema está no Cloud9 usando caminhos absolutos (não legais) em suas páginas HTML. Se você abrir as ferramentas do desenvolvedor no Chrome, poderá ver uma longa lista de erros 404.

Eu trabalhei em torno do problema usando algumas regras de reescrita do Apache:

Minha configuração atual do Apache:

 RewriteEngine On
 RewriteRule   ^/socket.io/(.*) /editor/socket.io/$1 [P]
 RewriteRule   ^/static/(.*) /editor/static/$1 [P]
 RewriteRule   ^/workspace/(.*) /editor/workspace/$1 [P]

 ProxyPass /editor/ http://127.0.0.1:3000/
 ProxyPassReverse /editor/ http://127.0.0.1:3000/
 <Proxy *>
   Order deny,allow
   Allow from all
 </Proxy>
    
por 12.01.2012 / 11:42