untar: Módulo NGINX HTTP Untar
Instalação
Você pode instalar este módulo em qualquer distribuição baseada em RHEL, incluindo, mas não se limitando a:
- RedHat Enterprise Linux 7, 8, 9 e 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 e Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-untar
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-untar
Ative o módulo adicionando o seguinte no topo de /etc/nginx/nginx.conf:
load_module modules/ngx_http_untar_module.so;
Este documento descreve o nginx-module-untar v1.1 lançado em 21 de março de 2022.
Este módulo nginx pode servir conteúdo de arquivos estáticos diretamente de arquivos tar. Inspirado pelo nginx-unzip-module.
Recursos
- Zero-copy: saída de conteúdo diretamente do arquivo de arquivo (sem arquivos temporários)
- Cache de entradas de arquivo de arquivo analisadas: reduz o tempo de busca no arquivo
- Tipos de itens tar suportados: arquivo normal, dados de nome de arquivo longo
Exemplo de configuração
location ~ ^/(.+?\.tar)/(.*)$ {
untar_archive "$document_root/$1";
untar_file "$2";
untar;
}
Diretrizes do módulo
untar_archive string
contexto: http, server, location
Especifica o nome do arquivo tar.
untar_file string
contexto: http, server, location
Especifica o arquivo a ser extraído de untar_archive.
untar
contexto: location
Invoca a extração de untar_file de untar_archive
Limitações conhecidas
- apenas os verbos GET, HEAD são suportados
- sem listagem de entradas de arquivo
- suporte ao formato tar base (apenas arquivos normais: sem symlink, sparse etc.)
GitHub
Você pode encontrar dicas adicionais de configuração e documentação para este módulo no repositório do GitHub para nginx-module-untar.