O Apache no CentOS 5.9 VM exibe arquivos modificados incorretamente

1

Editar: isso foi quase totalmente reescrito, já que reduzi o problema.

Estou usando uma VM do Vagrant para espelhar o ambiente do cliente o mais próximo possível. Estou usando o VirtualBox 4.3 (com Guest Additions 4.3) com o Vagrant 1.3.5, e o servidor está rodando o CentOS 5.9, o Apache 2.2.3-83, o PHP 5.3.3 e o Drupal 7.

Quando o servidor inicia os arquivos originais no diretório compartilhado, onde meu aplicativo reside, eles são armazenados em cache. Quando eu mudo o arquivo, o arquivo original +/- o delta do tamanho do arquivo é exibido, levando à corrupção da imagem que eu vi antes. Portanto, as adições adicionam caracteres NUL no final do original e as exclusões truncam o arquivo. Quando visualizo o arquivo usando nano , o conteúdo está correto; reiniciar o serviço httpd não faz diferença. Preciso reiniciar a VM para que as alterações sejam exibidas corretamente.

Antes:

// The quick brown fox

Alterações:

// The quick brown fox jumps over the lazy dog

Apache serve:

// The quick brown fox%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%%code%

Onde exatamente esse erro está? Com o Apache 2.2 ou suas dependências, ou com o VirtualBox e suas adições de comentários?

    
por Robert K 24.10.2013 / 23:19

1 resposta

4

Este é provavelmente o problema com a implementação buggy sendfile() do VirtualBox.

Tente definir:

EnableSendfile off

O equivalente para nginx:

sendfile off;
    
por 25.10.2013 / 18:49