Instale o nginx com ngx_pagespeed (otimização de velocidade) no Debian e Ubuntu

Instale o nginx com ngx_pagespeed (otimização de velocidade) no Debian e Ubuntu

Em nosso último artigo, mostramos como acelerar o desempenho do nginx com ngx_pagespeed no CentOS 7. Neste tutorial, explicaremos como instalar o nginx com ngx_pagespeed no sistema Debian e Ubuntu para melhorar o desempenho dos sites nginx.

Nginx [Engine X] é um servidor HTTP popular e de código aberto, alimentando muitos sites na Web: bem conhecido por seu alto desempenho e estabilidade. Ele também funciona como um proxy reverso, email genérico e servidor proxy TCP/UDP e pode ser implantado adicionalmente como um balanceador de carga.

Ngx_pagespeed é um módulo Nginx de código aberto e de código aberto destinado a melhorar a velocidade dos sites, além de reduzir o tempo de carregamento da página; Isso diminui drasticamente o tempo que leva para os usuários visualizarem e interagem com o conteúdo do seu site.

Leia sugerida: Instale mod_pagespeed para melhorar o desempenho do servidor Apache

Recursos ngx_pagespeed:

  • Suporte HTTPS com controle de URL.
  • Otimização da imagem: retirando metadados, redimensionamento dinâmico, recompressão.
  • CSS e JavaScript Minification, Concatenation, Inlining e Opherling.
  • Pequeno recurso em linha.
  • Imagem de adiamento e carregamento de javascript.
  • Reescrita HTML.
  • Extensão da vida útil do cache.
  • Permite configurar para vários servidores e muitos outros.

Etapa 1: Instalação Nginx da fonte

1. Para instalar Nginx com ngx_pagespeed Da fonte necessária, os pacotes seguintes a serem instalados no sistema.

$ sudo apt-get Install Build-essencial zlib1g-dev libpcre3 libpcre3-dev Unzip 
Instale ferramentas essenciais de construção no Ubuntu

2. Em seguida, faça o download de arquivos de origem da versão mais recente do nginx (1.13.2 no momento da redação deste artigo) usando o comando wget e extraia os arquivos como mostrado abaixo.

$ mkdir -p ~/make_nginx $ cd ~/make_nginx $ wget -c https: // nginx.org/download/nginx-1.13.2.alcatrão.gz $ tar -xzvf nginx -1.13.2.alcatrão.gz 
Baixe o pacote de origem nginx

3. Em seguida, pegue o ngx_pagespeed arquivos de origem e descompactar o arquivo compactado como este.

$ wget -c https: // github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2 estábulo.zip $ desnzip v1.12.34.2 estábulo.fecho eclair 
Faça o download de arquivos de origem ngx_pagespeed

4. Em seguida, mova -se para o desconfiado ngx_pagespeed diretório e faça o download das bibliotecas de otimização do PageSpeed ​​para compilar o nginx da seguinte forma.

$ CD NGX_PAGESPEED-1.12.34.2 -estável/$ wget -c https: // dl.Google.com/dl/página-speed/psol/1.12.34.2-x64.alcatrão.gz $ tar -xvzf 1.12.34.2-x64.alcatrão.gz 
Faça o download das bibliotecas do PageSpeed

Etapa 2: Configurar e compilar Nginx com NGX_PAGESPEED

5. Próximo movimento para o nginx-1.13.2 diretório e configure a fonte Nginx usando os seguintes comandos.

$ CD ~/make_nginx/nginx-1.13.2 $ ./configure --add-module = $ home/make_nginx/ngx_pagespeed-1.12.34.2-estável/ $ ps_ngx_extra_flags 
Configurar nginx com módulo ngx_pagespeed

6. Em seguida, compilar e instalar o nginx da seguinte maneira.

$ faz $ sudo fazer instalar 
Instale o nginx com ngx_pagespeed

7. Após a conclusão do processo de instalação, execute os comandos abaixo para criar os symlinks necessários para o nginx.

$ sudo ln -s/usr/local/nginx/conf/etc/nginx $ sudo ln -s/usr/local/nginx/sbin/nginx/usr/sbin/nginx 

Etapa 3: Criando arquivo da unidade Nginx para Systemd

8. Aqui, você terá que criar manualmente o arquivo da unidade Nginx, já que o SystemD é o sistema init em versões mais recentes do Sistema Debian e Ubuntu

Fisrt, crie o arquivo /lib/systemd/System/nginx.serviço.

$ sudo vi/lib/systemd/system/nginx.serviço 

Em seguida, faça o download do arquivo de serviço nginx systemd cola a configuração do arquivo de unidade no arquivo.

[Unidade] Descrição = o nginx http e servidor proxy reverso depois = syslog.rede de destino.alvo remoto-fs.Target NSS-Lookup.Target [Service] Type = Freking pidfile =/var/run/nginx.pid execstartPre =/usr/sbin/nginx -t execStart =/usr/sbin/nginx execreload =/bin/kill -s hup $ mainpid execstop =/bin/kill -s desistir $ mainpid privateTmp = true [install] querido = = multi -do utilizador.alvo 

Salve o arquivo e feche-o.

9. Agora, comece nginx Serviço por enquanto, e permite que ele comece na inicialização do sistema usando os comandos abaixo.

$ sudo systemctl inicial nginx $ sudo systemctl atabille nginx 

Importante: Depois de iniciar o serviço Nginx, você pode ver um erro como mostrado na tela abaixo.

Systemd [1]: nginx.Serviço: Arquivo PID /Run /Nginx.PID não é legível (ainda?) Após o início: nenhum arquivo ou diretório 
Nginx falhou ao iniciar o erro

Para resolvê -lo, abra a configuração do nginx /etc/nginx/nginx.conf arquivar e anexar a seguinte linha.

#pid logs/nginx.pid; para pid /run /nginx.pid; 

Finalmente reinicie o serviço Nginx novamente.

$ sudo systemctl Daemon-Reload $ sudo SystemCtl Iniciar Nginx $ sudo Systemctl status nginx 

Etapa 4: Configure o nginx com o módulo PageSpeed

10. Agora que o Nginx está instalado e executando em seu sistema, você precisa ativar o módulo NGX_PAGESPEED. Primeiro, crie um diretório em que o módulo cache os arquivos para o seu site e definirá as permissões adequadas neste diretório da seguinte forma.

$ sudo mkdir -p /var /ngx_pagespeed_cache $ sudo chown -r ninguém: nogroup /var /ngx_pagespeed_cache 

11. Para ativar o módulo NGX_PAGESPEED, abra o arquivo de configuração nginx.

$ sudo vi/etc/nginx/nginx.conf 

Adicione as seguintes linhas de configuração ngx_pagespeed no bloco do servidor.

# PageSpeed ​​Principais configurações PágesPeed ON; PAGESPEED FileCachepath /var /ngx_pagespeed_cache; # Verifique se as solicitações de recursos otimizados da PageSpeed ​​vão para o manipulador de PagesPeed # e nenhum cabeçalho estranho é definido. Localização ~ "\.Pagespeed \.([a-z] \.)?[a-z] 2 \.[^.] 10 \.[^.]+"add_header" "" "; localização ~"^/ngx_pagespeed_static/" localização ~"^/ngx_pagespeed_beacon " 

Observação:.

A seguir, é apresentado um exemplo de funcionamento do arquivo de configuração nginx com Ngx_pagespeed ativado no host virtual padrão.

Configuração Nginx com NGX_PAGESPEED
#user ninguém; trabalhador_processos 1; #error_log logs/erro.registro; #error_log logs/erro.Aviso de log; #error_log logs/erro.informações de log; pid /run /nginx.pid; eventos trabalhador_connections 1024;  http inclua MIME.tipos; default_type Application/Octet-Stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/acesso.log main; sendfile on; #tcp_nopush ligado; #keepalive_timeout 0; Keepalive_timeout 65; #gzip em; servidor ouça 80; server_name localhost; #charset koi8-r; #access_log logs/host.acesso.log main; # PageSpeed ​​Principais configurações PágesPeed ON; PAGESPEED FileCachepath /var /ngx_pagespeed_cache; # Verifique se as solicitações de recursos otimizados da PageSpeed ​​vão para o manipulador de PagesPeed # e nenhum cabeçalho estranho é definido. Localização ~ "\.Pagespeed \.([a-z] \.)?[a-z] 2 \.[^.] 10 \.[^.]+"add_header" "" "; localização ~"^/ngx_pagespeed_static/" localização ~"^/ngx_pagespeed_beacon " localização / root html; ÍNDICE ÍNDICE.Índice HTML.htm;  #error_page 404/404.html; # Redirecionar páginas de erro do servidor para a página estática /50x.html # error_page 500 502 503 504 /50x.html; Localização = /50x.html root html;  # Proxy Os scripts PHP para ouvir Apache em 127.0.0.1:80 # #location ~ \.php $  # proxy_pass http: // 127.0.0.1; # # Passe os scripts PHP para o servidor FastCGI ouvindo em 127.0.0.1: 9000 # #location ~ \.php $  # root html; # fastcgi_pass 127.0.0.1: 9000; # Índice fastcgi_index.php; # fastcgi_param script_filename /scripts $ fastcgi_script_name; # inclua fastcgi_params; # # negar acesso a .Arquivos Htaccess, se o documento do Apache # concordar com o # # #location # /\ da nginx ~ /\.ht  # negar tudo; # # Outro host virtual usando a mistura de configuração IP-, nome- e baseada em porta # #Server  # Ouça 8000; # Ouça Somename: 8080; # server_name somename alias outro.Alias; # localização /  # root html; # Índice Índice.Índice HTML.htm; # # # HTTPS Server # #Server  # Ouça 443 SSL; # server_name localhost; # ssl_certificate cert.PEM; # ssl_certificate_key cert.chave; # ssl_session_cache compartilhado: ssl: 1m; # ssl_session_timeout 5m; # SSL_CIPHERS High:!Anull:!Md5; # ssl_prefer_server_ciphers on; # localização /  # root html; # Índice Índice.Índice HTML.htm; # # 

Salve e feche o arquivo.

12. Em seguida, verifique se a sintaxe do arquivo de configuração nginx está livre de erros executando o comando abaixo, se estiver correto, você verá a saída abaixo:

$ sudo nginx -t nginx: o arquivo de configuração/usr/local/nginx/conf/nginx.Conf Sintaxe está OK Nginx: File de configuração/usr/local/nginx/conf/nginx.O teste conf é bem -sucedido 

13. Depois reinicie o servidor nginx para efetuar as mudanças recentes.

$ sudo systemctl reinicie nginx 

Etapa 5: Testando o nginx com ngx_pagespeed

14. Agora teste se o NGX-PAGESPEED agora está trabalhando em conjunto com o nginx usando o comando CURL abaixo.

$ curl -i -p http: // localhost 
Verifique o nginx com ngx_pagespeed

Se você não conseguiu ver o cabeçalho acima, volte para a etapa 10 e analise as instruções para ativar o NGX-PAGESPEED com as etapas sucessivas.

Repositório Github NGX-PAGEED: https: // github.COM/PAGESPEED/NGX_PAGESPEED

Se você deseja proteger o Nginx Web Server, sugerimos a leitura deste tutorial útil: o guia final para proteger, endurecer e melhorar o desempenho do nginx.

É isso! Neste tutorial, explicamos como instalar o nginx com ngx_pagespeed no Debian e Ubuntu. Se você tiver alguma dúvida, envie -nos usando o formulário de comentários abaixo.