o apache mod_substitute funciona em enrolar mas não no navegador

1

Eu tenho um mod_substitute como abaixo, que funciona perfeitamente no curl, mas não no navegador. Além disso, funciona em todas as páginas, exceto uma página.

Gostaria de saber o que faria com que o mod_substitute não funcionasse no navegador? como depurar e corrigir esse problema?

    
por Hema 11.04.2017 / 16:09

2 respostas

6

Para solucionar esses problemas, é uma boa ideia comparar os cabeçalhos no navegador com os que estão em curl ( -i , --include flag mostrará cabeçalhos e -H flag podem adicioná-los) e de o navegador adiciona um de cada vez para enrolar o comando até que o problema seja reproduzido.

Eu li na seção de comentários da página de documentos mod_substitute que descreve sintomas como os que você descrito, com mod_substitute às vezes não funcionando como esperado:

It turned out it was the order of our filter chain. DEFLATE was running before SUBSTITUTE. For small files, DEFLATE was not doing anything, so it worked. On some internal proxy stuff that did not send an Accept-Encoding header it was working. But, other times it did not. In the end, this worked best:

AddOutputFilterByType INFLATE;SUBSTITUTE;DEFLATE text/html text/plain text/xml

Outra opção é desabilitar o cabeçalho Accept-Encoding para o recurso de destino no qual mod_substitute deve fazer suas substituições.

RequestHeader unset Accept-Encoding

É (sem dúvida) melhor usar o outro truque, para que você possa colher os benefícios de mod_deflate e mod_substitute .

    
por 12.04.2017 / 21:12
1

Desativar a compactação gzip resolve o problema. Adicione as linhas abaixo ao httpd.conf  SetEnv no-gzip 1 resolve o problema

    
por 12.04.2017 / 09:07