Varnish como proxy reverso do servidor Apache2, problema de redirecionamento de porta

1

Estou procurando e há muitas pessoas com o mesmo problema, mas não há uma solução clara (ou pelo menos eu não a encontrei).

Estou usando o Varnish-Cache (3.0) como proxy reverso ouvindo na porta 80 para um servidor da Web Apache 2 na porta 88.

Se eu solicitar o seguinte URL, ele funcionará bem: link

Mas, se eu solicitar isso: link (sem o "/" no final), o navegador é redirecionado para a porta do backend Apache ( link ).

Como posso configurar o comportamento do Apache 2 nessa situação?

Obrigado antecipadamente!

    
por a0rtega 24.11.2011 / 19:01

1 resposta

2

Verifique a diretiva UseCanonicalName no httpd.conf

#
# UseCanonicalName: Determines how Apache constructs self-referencing
# URLs and the SERVER_NAME and SERVER_PORT variables.
# When set "Off", Apache will use the Hostname and Port supplied
# by the client.  When set "On", Apache will use the value of the
# ServerName directive.
#
UseCanonicalName Off

Você também pode removê-lo no verniz, tente isto:

sub vcl_fetch { 
   if (beresp.status == 301 || beresp.status == 302) 
   { 
      set beresp.http.Location = regsub(beresp.http.Location, "^(\w+://[^/]+):\d+", ""); 
   } 
} 
    
por 24.11.2011 / 19:53