GNU/Linux >> Znalost Linux >  >> Debian

Jak nastavit Nginx pomocí modulu Google Pagespeed na Debianu 11

Modul Google Pagespeed je modul s otevřeným zdrojovým kódem pro optimalizaci vašich webových stránek pod webovým serverem Nginx a Apache. Modul Pagespeed je modul na úrovni serveru nainstalovaný spolu s webovým serverem Nginx a Apache.

Modul Pagespeed zlepšuje výkon a rychlost vašeho webu optimalizací statických souborů na vašich webech. Modul Pagespeed optimalizuje obrázky na vašich webových stránkách, minimalizuje statické soubory, jako jsou HTML, CSS a JavaScript, a optimalizuje ukládání souborů do mezipaměti.

V tomto tutoriálu vám ukážeme, jak vytvořit modul Nginx Pagespeed na nejnovějším Debian 11 Bullseye. Tuto příručku lze použít na aktuální instalaci Nginx, protože jste právě vytvořili modul Nginx.

Předpoklady

Než začnete, ujistěte se, že máte následující požadavky.

  • Operační systém:Debian 11 Bullseye
  • Oprávnění uživatele root

Nyní začněme.

Instalace závislostí balíčků

Nejprve budete instalovat závislosti balíčků pro kompilaci modulu Nginx.

1. Provedením příkazu apt níže aktualizujte aktuální úložiště ve vašem systému.

aktualizace sudo apt

2. Dále nainstalujte základní závislosti balíčků pro kompilaci programů pomocí apt příkaz níže.

sudo apt install curl dpkg-dev build-essential zlib1g-dev git libpcre3 git libpcre3-dev unzip uuid-dev -y

3. Poté nainstalujte závislosti sestavení pro kompilaci modulu Nginx.

sudo apt build-dep nginx -y

Kontrola aktuální verze Nginx

Chcete-li vytvořit vlastní modul Nginx Pagespeed, ujistěte se, že váš aktuální webový server Nginx uchovává stejnou verzi zdrojového kódu Nginx, kterou budete používat k sestavení modulu Nginx.

1. Provedením následujícího příkazu zkontrolujte verzi Nginx.

nginx -v

Pro tento příklad je aktuální verze Nginx nainstalovaná na našem počítači '1.18.0 '. Níže je podobný výstup, který uvidíte.

Verze nginx:nginx/1.18.0

Pokud na svém systému nemáte balíček Nginx, nainstalujte jej z oficiálního úložiště Debianu pomocí příkazu apt níže.

sudo apt install nginx -y

2. Dále vytvořte novou dočasnou proměnnou prostředí pro vaši verzi Nginx pomocí příkazu níže.

export NG_VER=1.18.0

Stáhnout zdrojový kód Nginx a Pagespeed

V tomto kroku stáhnete zdrojový kód Nginx a modul Pagespeed na váš server. Tento zdrojový kód Nginx bude mít stejnou verzi jako váš aktuální balíček Nginx.

1. Vytvořte nový adresář projektu '/usr/src/nginx a jděte do toho.

mkdir -p /usr/src/nginx; cd /usr/src/nginx

2. Nyní spusťte následující příkaz ke stažení zdrojového kódu Nginx pomocí a rozbalte jej.

wget http://nginx.org/download/nginx-$NG_VER.tar.gz
tar -xzvf nginx-$NG_VER.tar.gz

3. Dále naklonujte modul Nginx Pagespeed do aktuálního adresáře a po dokončení procesu uvidíte nový adresář 'inkubátor-pagespeed-ngx'.

klon git https://github.com/apache/incubator-pagespeed-ngx.git

4. Přejděte na 'inkubátor-pagespeed-ngx ' a přepněte se do stabilní větve modulu Nginx Pagespeed.

cd incubator-pagespeed-ngx/
git checkout nejnovější-stable

5. Zkontrolujte soubor 'PSOL_BINARY_URL získáte odkaz ke stažení knihovny Page Optimization Library (PSOL). Tato knihovna je vyžadována pro modul Nginx Pagespeed.

kočka PSOL_BINARY_URL

Uvidíte podobný výstup jako níže. Proměnná '$BIT_SIZE_NAME ' je architektura vašeho serveru.

wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz

6. Nyní vytvořte novou dočasnou proměnnou prostředí 'BIT_SIZE_NAME' s hodnotou architektury vašeho serveru. Níže uvedený příklad používá architekturu 'x64' nebo 64bitový server.

export BIT_SIZE_NAME=x64

7. Nyní si stáhněte zdrojový kód PSOL a rozbalte jej.

wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz
tar -xzvf 1.13.35.2-$BIT_SIZE_NAME.tar.gz

Nyní jste připraveni vytvořit modul Nginx Pagespeed.

Kompilace modulu Nginx Pagespeed

V tomto kroku budete kompilovat modul Nginx Pagespeed. Nakonec získáte modul Nginx ve formátu '.so ', které můžete použít na svůj aktuální webový server Nginx.

1. Změňte pracovní adresář na adresář projektu Nginx.

cd /usr/src/nginx/nginx-$NG_VER

2. Provedením následujícího příkazu nakonfigurujte kompilaci modulu Nginx. Tento příkaz také zkontroluje vaše systémové požadavky, ujistěte se, že nemáte žádné chyby.

./configure --with-compat --add-dynamic-module=../incubator-pagespeed-ngx

Níže je výstup, který byste měli získat.

Shrnutí konfigurace
  + pomocí systémové knihovny PCRE
  + knihovna OpenSSL se nepoužívá
  + pomocí systémové knihovny zlib

  předpona cesty nginx:"/usr/local /nginx"
  binární soubor nginx:"/usr/local/nginx/sbin/nginx"
  cesta k modulům nginx:"/usr/local/nginx/modules"
  předpona konfigurace nginx:" /usr/local/nginx/conf"
  konfigurační soubor nginx:"/usr/local/nginx/conf/nginx.conf"
  soubor nginx pid:"/usr/local/nginx/logs/nginx .pid"
  Soubor protokolu chyb nginx:"/usr/local/nginx/logs/error.log"
  Soubor protokolu přístupu nginx http:"/usr/local/nginx/logs/access.log"
  dočasné soubory těla požadavku klienta nginx http:"client_body_temp"
  dočasné soubory serveru proxy nginx http:"proxy_temp"
  dočasné soubory nginx http fastcgi:"fastcgi_temp"
  dočasné soubory nginx http uwsgi :"uwsgi_temp"
  dočasné soubory nginx http scgi:"scgi_temp"

3. Dále zkompilujte modul Nginx Pagespeed pomocí následujícího příkazu.

vytvářejte moduly

Tento příkaz bude nějakou dobu trvat v závislosti na CPU a paměti vašeho systému.

4. Po dokončení procesu kompilace je váš modul Pagespeed dostupný jako 'objs/ngx_pagespeed.so '. Zkontrolujte modul pomocí následujícího příkazu.

ls objs/ngx_pagespeed.so

Měli byste získat modul Nginx Pagespeed 'ngx_pagespeed.so ' jak je uvedeno níže.

-rwxr-xr-x 1 root root 19M prosinec  8 21:44 objs/ngx_pagespeed.so

Přidání modulu Pagespeed do aktuální instalace Nginx

V tomto kroku implementujete modul Nginx Pagespeed do vaší aktuální instalace Nginx. Chcete-li to provést, zkopírujte modul Pagespeed 'ngx_pagespeed.so' do adresáře modulu Nginx a přidejte novou konfiguraci, která jej povolí.

1. Zkopírujte modul 'ngx_pagespeed.so ' do výchozího adresáře modulu Nginx '/usr/share/nginx/modules '.

cp /usr/src/nginx/nginx-$NG_VER/objs/ngx_pagespeed.so /usr/share/nginx/modules

2. Vytvořte nový konfigurační soubor pro aktivaci modulu Pagespeedd.

nano /usr/share/nginx/modules-available/ngx-pagespeed.conf

Zkopírujte a vložte následující konfiguraci.

load_module modules/ngx_pagespeed.so;

Uložte konfiguraci a ukončete.

3. Aktivujte modul Pagespeed vytvořením konfigurace symbolického odkazu 'ngx-pagespeed.conf ' do adresáře '/etc/nginx/modules-enabled/ '.

ln -s /usr/share/nginx/modules-available/ngx-pagespeed.conf /etc/nginx/modules-enabled/70-ngx-pagespeed.conf

4. Dále vytvořte novou konfiguraci 'pagespeed.conf' na '/etc/nginx ' adresář.

nano /etc/nginx/pagespeed.conf

Zkopírujte a vložte následující konfiguraci.

pagespeed on;

# Potřebuje existovat a být zapisovatelný pomocí nginx. Pro nejlepší výkon používejte tmpfs.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

# Zajistěte, aby požadavky na zdroje optimalizované pro rychlost stránky šly do obslužné rutiny rychlosti stránky
# a nenastavovala se žádná nadbytečná záhlaví.
umístění ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
umístění ~ "^/pagespeed_static/" { }
umístění ~ "^/ngx_pagespeed_beacon$" { }

Uložte konfiguraci a ukončete.

5. Dále vytvořte nový adresář pro ukládání mezipaměti Nginx Pagespeed a ujistěte se, že do adresáře lze zapisovat pomocí Nginx 'www-data ' uživatel.

mkdir -p /var/ngx_pagespeed_cache
chown www-data:www-data /var/ngx_pagespeed_cache

Nyní je modul Nginx Pagespeed přidán do vaší aktuální instalace Nginx. Přejděte k dalšímu kroku a povolte jej na svých virtuálních hostitelích (bloky serveru).

Přidání modulu Nginx Pagespeed do vašeho virtuálního hostitele

Chcete-li povolit modul Pagespeed na vašem virtuálním hostiteli, přidejte konfiguraci 'pagespeed.conf' do konfiguračního souboru vašeho virtuálního hostitele pomocí možnosti 'zahrnout'.

1. V tomto příkladu přidejte modul Pagespeed k virtuálnímu hostiteli 'výchozí '. Upravte konfiguraci '/etc/nginx/sites-available/default' pomocí nano editoru.

nano /etc/nginx/sites-available/default

Přidejte konfiguraci 'include /etc/nginx/pagespeed.conf;' uvnitř sekce 'server {...}' jak je uvedeno níže.

server {

  .....
  ....

  zahrnout /etc/nginx/pagespeed.conf;
}

uložte konfiguraci a ukončete.

2. Ověřte konfiguraci Nginx a ujistěte se, že se nezobrazují žádné chyby. Poté restartujte službu Nginx a použijte novou konfiguraci.

nginx -t
sudo systemctl restartujte nginx

Ověření modulu Nginx Pagespeed

Chcete-li ověřit instalaci a implementaci modulu Nginx Pagespeed, můžete použít příkaz curl k získání záhlaví HTTP vašeho webového serveru Nginx nebo použít prvek Inspect ve vašem webovém prohlížeči.

1. Spusťte níže uvedený příkaz curl, abyste získali záhlaví HTTP vašeho webového serveru Nginx.

curl -I https://domena.com/

Nyní byste měli získat výstup, jak je uvedeno níže. Další sekce záhlaví „X-Page-Speed ' znamená, že modul Nginx Pagespeed je povolen.

HTTP/1.1 200 OK
Server:nginx/1.18.0
Typ obsahu:text/html
Připojení:keep-alive
Datum:středa, 1. prosince 2021 22:02:52 GMT
X-Page-Speed:1.13.35.2-0
Cache-Control:max-age=0, no-cache

2. Chcete-li to zkontrolovat z webového prohlížeče, navštivte název své domény a klikněte pravým tlačítkem na stránku a vyberte možnost Prozkoumat '.

Znovu načtěte svou webovou stránku a uvidíte podrobná záhlaví HTTP, jak je uvedeno níže.

Závěr

gratuluji! Naučili jste se, jak zkompilovat modul Nginx Pagespeed a implementovat jej do aktuální instalace Nginx. Stačí do konfigurace virtuálního hostitele zahrnout konfiguraci 'pagespeed.conf'.


Debian
  1. Jak nainstalovat Ghost na Debian s Nginx

  2. Jak nainstalovat DokuWiki na Debian Wheezy s Nginx

  3. Jak nainstalovat WonderCMS s Nginx na Debian 11

  1. Jak nainstalovat Nginx pomocí Google PageSpeed ​​na Ubuntu 20.04

  2. Jak vytvořit nginx pomocí modulu Google PageSpeed ​​na Debianu 8 (Jessie)

  3. Jak nastavit Nginx s podporou HTTP/2 na Debianu 9

  1. Jak nastavit firewall s UFW na Debianu 10

  2. Jak nastavit firewall s UFW na Debianu 9

  3. Jak nainstalovat WonderCMS s Nginx na Debian 9