Instale o nginx com ngx_pagespeed (otimização de velocidade) no Debian e Ubuntu
- 1878
- 532
- Randal Kuhlman
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 UnzipInstale 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.gzBaixe 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 eclairFaç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.gzFaç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_flagsConfigurar nginx com módulo ngx_pagespeed
6. Em seguida, compilar e instalar o nginx da seguinte maneira.
$ faz $ sudo fazer instalarInstale 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órioNginx 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: // localhostVerifique 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.
- « 12 comandos úteis para filtrar o texto para operações de arquivo eficazes no Linux
- Como instalar o php 5.4, Php 5.5 ou Php 5.6 no CentOS 6 »