Por que a resposta é truncada em 16k com php + fastcgi?

5

Eu tenho o PHP 5.3.3 e o nginx 0.8.47 compilados da fonte que está executando um blog Wordpress. O feed RSS gerado pelo Wordpress estava ficando truncado em aproximadamente 16k (incluindo o cabeçalho era 16k + 90b). Adicionando o seguinte à minha configuração nginx:

fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;

o problema foi embora .. No entanto, pelo que eu li na página wiki Nginx , os buffers só determinam quando o buffer vai estourar no disco. Não há nada que indique que a resposta pode ser truncada porque os buffers são muito pequenos.

Então, minha pergunta é: por que a resposta foi truncada antes de alterar essa configuração? Parece que o pedido não deveria ter sido truncado, apenas um pouco mais lento devido ao armazenamento em disco.

Informação adicional:

  • Ubuntu 10.04.2 32bit
  • PAGESIZE 4k
por ColinM 12.05.2011 / 21:27

3 respostas

1

A resposta aceita é inútil, então eu fui com o comentário sobre a verificação de permissões de gravação, o que fez o truque para mim. Estou executando o Nginx como um usuário diferente do padrão, portanto, as permissões tiveram que ser alteradas no caminho temporário padrão. Para instalações do RHEL, isso é /var/lib/nginx/tmp/fastcgi e tem permissões padrão de 700:

chown -R webuser /var/lib/nginx/tmp

Eu encontrei este problema no Scientific Linux 7, usando o pacote dos repositórios SL. Esta etapa não foi necessária para mim no Scientific Linux 6 usando o pacote fornecido pelo Nginx, que tem 755 permissões em /var/cache/nginx

    
por 06.01.2017 / 00:53
0

Primeiro, tente ver error_log (em level info, se nada relevante for impresso no nível de informações, tente ler o log de depuração).

    
por 27.09.2011 / 16:10
0

Copie este texto no seu arquivo conf de nginx

http {

        .....
        fastcgi_buffers 256 4k;
        .....
}

Após reiniciar o nginx

    
por 18.01.2013 / 23:16