Nginx Mainline är utvecklingsgrenen av Nginx webbserver, som tillhandahåller de senaste funktionerna, uppdateringarna och prestandaförbättringarna inför den stabila utgåvan. Den är idealisk för utvecklare och administratörer som behöver tillgång till de senaste funktionerna och förbättringarna. Nginx Mainline är särskilt lämpad för miljöer där banbrytande prestanda och flexibilitet är avgörande, såsom webbplatser med hög trafik, lastbalansering och omvänd proxykonfiguration.
På Debian 12 eller 11 har du två primära metoder för att installera Nginx Mainline via kommandoradsterminalen. Det första alternativet är att använda den officiella apt-spegeln från nginx.org, som säkerställer att du får de senaste uppdateringarna direkt från Nginx-teamet. Alternativt kan du installera Nginx Mainline med hjälp av tredjepartsförvaret som underhålls av Ondřej Surý, som är känd för att upprätthålla uppdaterade paket för Nginx och annan viktig programvara. Den här guiden går igenom båda metoderna, så att du kan välja den som bäst passar dina behov.
Metod 1: Installera Nginx Mainline via Nginx.org
Nginx Mainline förinstallationssteg
Uppdatera Debians systempaket
Det första steget i vår guide är att se till att ditt Debiansystem är helt uppdaterat. Detta säkerställer att du har de senaste versionerna av alla paket och säkerhetskorrigeringar. För att uppdatera paketlistan och själva paketen måste du först utföra följande kommando i din terminal:
sudo apt update
För att uppgradera eventuella föråldrade paket, kör följande kommando:
sudo apt upgrade
Installera nödvändiga paket
Beroende på vilken metod du väljer för att installera den senaste Nginx mainline-versionen på ditt Debiansystem, kan båda metoderna kräva ytterligare paket. Följande kommando installerar det som krävs:
sudo apt install curl gnupg2 ca-certificates lsb-release dirmngr software-properties-common apt-transport-https -y
De flesta kanske redan är installerade, men kör kommandot igen för att säkerställa att de är det.
Importera Nginx.org Nginx Mainline Repository
Denna metod hämtar den senaste Nginx-huvudlinjen eller stabil direkt från Nginx.orgs officiella APT-förråd. Det är det bästa alternativet att hålla sig uppdaterad direkt när en nyare version av Nginx släpps.
Importera Nginx.org GPG-nyckel
Det första steget är att ladda ner och lägga till Nginx GPG-nyckeln. Den här nyckeln är nödvändig för att verifiera äktheten av paketen vi kommer att installera:
curl -fSsL https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg > /dev/null
Vi kommer nu att använda GPG-nyckeln för att validera nyckelns framgångsrika import:
gpg --dry-run --quiet --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg
Förutsatt att importen lyckades kommer du att se utdata som bekräftar nyckelns detaljer.
Exempel på utdata om framgångsrikt:
pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62
uid nginx signing key <signing-key@nginx.com>
Importera Nginx.org APT Repository
Med GPG-nyckeln säkert på plats kan vi lägga till Nginx Mainline eller Stable repository till vår APT-pakethanterarelista.
För att importera Nginx Mainline-förvaret, använd:
echo "deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
Notera: Den här artikeln diskuterar i första hand installation av Nginx-huvudlinjen. Men jag har också gett möjligheten att installera den senaste stabila versionen, vilket för många Linux-distributioner skulle utgöra en betydande uppgradering.
Eller, för Nginx Stable-förvaret:
echo "deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
Vårt nästa mål är att konfigurera APT-pinning för att föredra Nginx-paket från nginx.org-förvaret framför alla paket från Debians standard- eller andra tredjepartsförvar.
Vi uppnår detta genom att använda följande kommando:
echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" | sudo tee /etc/apt/preferences.d/99nginx
Exempel på utdata:
x\nPin-Priority: 900\n" | sudo tee /etc/apt/preferences.d/99nginx
Package: *
Pin: origin nginx.org
Pin: release o=nginx
Pin-Priority: 900
I det här skedet måste vi uppdatera våra APT-förråd för att inkludera de nya tilläggen:
sudo apt update
Slutför installationen av Nginx Mainline
Med allt korrekt inställt kan vi nu installera Nginx:
sudo apt install nginx
När installationen är klar är det viktigt att verifiera att den lyckades. För att bekräfta korrekt installation av Nginx kan vi kontrollera den installerade versionen:
nginx -v
Kommandoutgången ska återspegla den senaste versionen av Nginx Mainline eller Stable, beroende på vilken du installerar.
Metod 2: Installera Nginx Mainline via Ondřej Surý
Den andra metoden använder det välkända tredjepartsförrådet som underhålls av Ondřej Surý, som många i Debian- och Ubuntu-communityt vet underhåller Apache-, Nginx- och PHP-förråd för uppströmsutgåvor. Denna metod är beroende av att vänta på att han ska uppdatera när en nyare version kommer ut. Det är inte lika snabbt som Nginx.org APT-förvaret, men den här versionen innehåller ytterligare kompilerade moduler; en använder Brotli.
Importera Nginx Mainline
För att importera Nginx Mainline-förvaret från tredjepartsförvaret är detta enkelt; använd följande kommando:
curl -sSL https://packages.sury.org/nginx-mainline/README.txt | sudo bash -x
För de som föredrar att byta tillbaka till den senaste stabilen eller vill använda stabil istället för mainline, använd följande kommando för att importera den här versionen:
curl -sSL https://packages.sury.org/nginx/README.txt | sudo bash -x
Se till att du har tagit bort huvudversionen för att undvika konflikter.
Installera Nginx Mainline
Nu kan du installera Nginx mainline eller stabil med följande kommando:
sudo apt install nginx
Bekräfta Nginx Mainline Installation
Med Nginx installerat kan du bekräfta installationen med följande kommando:
nginx -v
Utdata ska visa vilken version av Nginx som är installerad; om den matchar den senaste huvudlinjen har du installerat huvudlinjeversionen.
Ytterligare Nginx-tips med Ondřej Surý Installationsmetod
Ställ in Brotli på Nginx Mainline eller Stable
Eftersom båda versionerna av Nginx mainline eller stabil inkluderar brotli-modulen, använd följande kommando för att installera detta:
sudo apt install libnginx-mod-brotli
Öppna nu din Nginx-konfigurationsfil:
sudo nano /etc/nginx/nginx.conf
För att aktivera Brotli-komprimering på din Nginx-server måste du lägga till följande konfiguration i HTTP-blocket på din nginx.conf
konfigurationsfil:
brotli on;
brotli_comp_level 6;
brotli_static on;
brotli_types application/atom+xml application/javascript application/json application/rss+xml
application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype
application/x-font-ttf application/x-javascript application/xhtml+xml application/xml
font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon
image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;
Här är en uppdelning av konfigurationsdirektiven:
- brotli on;:
- Detta direktiv möjliggör Brotli-komprimering.
- brotli_comp_level 6;:
- Detta ställer in komprimeringsnivån till 6 (på en skala från 0-11). Ett högre värde kommer att resultera i bättre komprimering men använder mer CPU-resurser.
- brotli_static on;:
- Detta direktiv säger åt Nginx att söka efter förkomprimerade filer med filtillägget .br. Om en sådan fil finns kommer den att serveras istället för att komprimera filen i farten.
- brotli_types …;:
- Detta direktiv specificerar de MIME-typer av svar som ska komprimeras. Den långa listan med typer inkluderar olika textformat, typsnitt och bilder som drar nytta av Brotli-komprimering.
Testa nu nginx-konfigurationen innan du laddar om för att säkerställa att inga fel finns:
sudo nginx -t
Testa nu brotli-komprimering med följande kommando:
curl -I --compressed http://your-server.com/some-path
Här är en uppdelning av kommandot som används:
- curl: Detta är kommandoradsverktyget som används för att skicka HTTP-förfrågningar.
- -I: Den här flaggan säger åt curl att bara hämta rubrikerna.
- –compressed: Den här flaggan talar om för curl att begära komprimerat innehåll.
- http://din-server.com/some-path: Det här är webbadressen du testar.
Leta efter en rubrik i utgången som säger Content-Encoding: br. Detta indikerar att Brotli-komprimering används:
Content-Encoding: br
Slutsats
Genom att installera Nginx Mainline på Debian med antingen den officiella apt-mirror från nginx.org eller tredjepartsförvaret från Ondřej Surý, har du utrustat din server med den senaste och mest avancerade versionen av Nginx. Detta säkerställer att ditt system kan dra nytta av banbrytande funktioner och prestandaförbättringar skräddarsydda för din specifika miljö. Regelbundna uppdateringar från ditt valda arkiv kommer att hålla Nginx igång säkert och effektivt. Oavsett om du väljer den officiella spegeln eller tredjepartsförvaret, kommer underhållet av Nginx Mainline att hjälpa dig att ligga i framkant med webbserverteknik på ditt Debiansystem.