Como servir arquivos de texto giziped com nginx

2

Para economizar espaço, compactamos todos os nossos logs e arquivos de texto e esses arquivos são procurados pelo usuário, mas esses arquivos são baixados em vez de abertos no navegador, não consegui encontrar uma maneira de definir o tipo mime text/plain para tais arquivos, por exemplo isso não funciona

types {
    text/plain txt txt.gz log.gz
}

Existe uma maneira de o nginx informar que os arquivos txt.gz e log.gz devem ser exibidos como text/plain ?

    
por Anurag Uniyal 01.12.2014 / 22:20

3 respostas

1

Configure o nginx gzip_static

exemplo:

location / {
gzip_static on
}

link

    
por 01.12.2014 / 22:25
1

Isso funcionou para mim, basicamente, corresponde à localização com base na extensão txt.gz e, em seguida, para esses arquivos, defina a codificação correta e o tipo MIME:

location ~* /my/data/.*txt.gz$ {
    add_header  Content-Encoding  gzip;
    gzip off;
    types { text/plain gz; };
    root /;
}
    
por 16.12.2014 / 00:37
0

O Nginx não pode simplesmente descompactar esses arquivos antes de atendê-los. Você precisa de algum tipo de script que faça isso para você, em seguida, serve os resultados para o usuário. A tentativa de forçar o arquivo .gz como texto resultará apenas na saída do lixo.

    
por 01.12.2014 / 22:22