Como cache os recursos estáticos usando o cache HTTP no nginx

Como cache os recursos estáticos usando o cache HTTP no nginx
Sendo um Nginx Administrador, você sempre procura novos métodos para melhorar o desempenho de seus servidores da web. Esta pesquisa o levará a uma variedade de caminhos e, no final, você ficará confuso para escolher entre o número infinito de soluções.

Possibilitando Recursos estáticos ou cache de conteúdo é um método possível para Nginx otimização. Sempre que um navegador visita um site, o Nginx descarrega o cache de arquivos específicos, como ativos de imagens estáticas para o navegador individual da Web, em vez de servir a cada arquivo. Como resultado, seus sites movidos a nginx carregam mais rapidamente no navegador.

Neste post, você aprenderá Como cache os recursos estáticos usando o cache HTTP no nginx. Antes de avançar em direção ao procedimento de cache de conteúdo estático, primeiro, entenda o conceito básico de conteúdo estático e como o conteúdo estático é armazenado em cache no nginx.

O que é conteúdo estático

Qualquer arquivo armazenado em um servidor e é servido a usuários de cada vez, da mesma maneira, é conhecido como conteúdo estático. A funcionalidade de conteúdo estático é semelhante a um jornal. À medida que um jornal é publicado, todo mundo que pega uma cópia verá as mesmas histórias e fotografias o dia todo, independentemente do que novos eventos ocorram durante o dia.

O conteúdo da maioria do site é baseado em arquivos estáticos pré-formatados. É improvável que esses arquivos estáticos mudem com o tempo e para outros usuários também. Comparado aos arquivos dinâmicos gerados "On the Fly" com base nas informações do banco de dados, os arquivos estáticos são os candidatos padrão para armazenamento em cache. Exemplos de conteúdo estático são imagens, músicas, javascript, filmes e arquivos CSS.

Como cache os recursos estáticos no Nginx

O método típico de cache na web é salvar uma cópia do arquivo estático em um cache. Esse processo permite que o conteúdo estático se aproxime do usuário do site e entregue os recursos estáticos mais rapidamente. Conteúdo ou recursos estáticos podem ser armazenados em cache por redes de entrega de conteúdo (CDNs) e navegadores por uma quantidade predeterminada de tempo e servidos aos usuários, desde que esse recurso estático seja solicitado. Como o conteúdo estático não muda com o tempo, os usuários podem receber os mesmos arquivos várias vezes.

O que são cabeçalhos de cache http em nginx

Para definir durações de cache e indicar conteúdo da Web em cache, os desenvolvedores da Web utilizam Cabeçalhos de cache HTTP. Você pode personalizar sua estratégia de cache usando diferentes cabeçalhos de cache, que garantem a frescura do seu conteúdo ou recursos estáticos.

Por exemplo, "Controle de cache: máximo = 3600”Declara que o arquivo específico só pode ser armazenado em cache por uma hora depois que deve ser recarregado da fonte. Marcar um único ou grupo de arquivos separadamente pode ser demorado. Ao implementar métodos cognitivos capazes de substituir o cabeçalho do cache, os CDNs modernos permitem que você evite essa prática.

Agora, mostraremos como ativar o cache estático usando o cache HTTP no nginx. Se o seu site compreender muitos recursos ou conteúdo estático, o método fornecido ajudará você a acelerar o carregamento das páginas da web. Para seguir o método abaixo do ritmo, você deve ter o Nginx instalado e ativado no seu sistema.

Como ativar o cache de recursos estáticos usando o cache HTTP no Nginx

Em primeiro lugar, pressione “Ctrl+alt+t”Para abrir o terminal. Depois disso, execute o comando abaixo para abrir o arquivo de configuração do NGINX em seu editor de nano:

$ sudo nano/etc/nginx/nginx.conf

Estamos ativando o cache estático no arquivo nginx padrão. Se você possui vários hosts e sites virtuais, precisará adicionar as seguintes configurações em cada arquivo de configuração:

Adicione as seguintes linhas para armazenar em cache os recursos estáticos, como arquivos CSS, imagens, ícones, arquivos JavaScript:

Localização ~* \.(css | gif | jpg | js | png | ico | otf | sng | xls | doc | exe | jpeg | tgx) $
access_log off;
expire max;

Nós adicionamos o “access_log off”Para desativar o logff de acesso por não atingir o limite de E/S. Considerando que a "expira”O cabeçalho compreende as informações relacionadas à disponibilidade do conteúdo em cache em seu cache do navegador. ““expira" é um Cabeçalho HTTP que podem ser colocados dentro dos blocos presentes no arquivo de configuração, como o servidor, http , e a localização bloquear. Geralmente, o “expira”O cabeçalho HTTP é adicionado no bloco de localização para armazenar em cache os arquivos estáticos:

Agora, pressione “Ctrl+o”Para salvar as alterações que fizemos no arquivo de configuração do Nginx:

Executar o “nginx”Comando com o“-t”Opção para testar o Nginx Arquivo de configuração e sua sintaxe:

$ sudo nginx -t

Agora, reinicie o Nginx digitando o comando abaixo do seu terminal:

$ sudo systemctl reinicie nginx

Como testar o armazenamento em cache de recursos estáticos usando o cabeçalho HTTP ao vivo no nginx

Para o seu site em execução em um Nginx servidor da web, você pode adicionar a extensão ao vivo do cabeçalho HTTP no seu navegador para testar o processo de cache.

Por exemplo, estamos adicionando o cabeçalho HTTP ao vivo ao nosso navegador Firefox clicando no “Adicione ao Firefox" botão:

Permita o cabeçalho HTTP ao vivo para acessar o site e dados relacionados ao navegador:

Em seguida, abra seu site para o qual você permitiu o cache de conteúdo estático em seu arquivo de configuração e verá que o cabeçalho HTTP está mostrando todas as informações relacionadas aos recursos de cache:

Você também pode pressionar “Ctrl+Shift+i”Para abrir as ferramentas do desenvolvedor. Carrega seu site algumas vezes e você notará que a velocidade de carregamento da Web é muito aprimorada, pois a maioria dos recursos é armazenada em cache durante a primeira carga da página da web:

Conclusão

Em um site, o conteúdo estático é um tipo de conteúdo que não muda nas páginas da web. Se o seu site incluir recursos estáticos ou conteúdo, você poderá melhorar seu desempenho ativando o cache, que armazena conteúdo estático para acesso mais rápido no navegador. Neste post, explicamos o que conteúdo estático é, Como o cache estático funciona no nginx, e você pode Recursos estáticos de cache ou conteúdo usando cache HTTP no Nginx. Além disso, também demonstramos como Para testar o cache de recursos estáticos usando o cabeçalho HTTP ao vivo.