Zoeken op website

Installeer Nginx met serverblokken (virtuele hosts) op Debian 10


Nginx is een zeer populaire, krachtige webserver die de kracht van reverse proxying, load-balancing, caching en nog veel meer combineert. Afhankelijk van hoe het is geconfigureerd, kan het fungeren als een reverse proxy en als load balancer voor HTTP/HTTPS-servers.

De Nginx-webserver heeft een fenomenale capaciteit bij het bedienen van duizenden gelijktijdige verbindingen en dit maakt het de snelste webserver, die meer dan de helft van de drukste sites ter wereld aanstuurt. Deze omvatten Netflix, DuckDuckGo en DropBox om er maar een paar te noemen.

Lees ook: Apache installeren met virtuele hosts op Debian 10

In deze tutorial leiden we u door de stappen voor het installeren van Nginx met virtuele hosts om meerdere domeinen te hosten op een Debian 10-server.

Vereisten

Voordat we aan de slag gaan, moet u ervoor zorgen dat aan de volgende vereisten is voldaan:

  1. Een exemplaar van Debian 10.
  2. Een volledig gekwalificeerde domeinnaam (FQDN) die naar de server verwijst.
  3. In deze handleiding gebruiken we het domein linux-console.net dat verwijst naar een Debian 10-systeem met een IP-adres 192.168.0.104.
  4. Een goede internetverbinding.

Stap 1: Update de Debian 10-pakketrepository

Voordat we iets anders doen, moeten we onze lokale pakketrepository bijwerken naar de nieuwste versies. Om dit te bereiken logt u in als een gewone gebruiker met sudo-rechten en voert u de onderstaande opdracht uit.

sudo apt update -y

Stap 2: Installeer Nginx op Debian 10

Omdat Nginx aanwezig is in de repository's van Debian, kunnen we het gerust installeren met behulp van de apt-pakketbeheerder die bij Debian wordt geleverd.

sudo apt install nginx -y

Stap 3: De status van de Nginx-webserver controleren

Als u geen fouten heeft ondervonden, is de Nginx-webserver met succes geïnstalleerd. Het is verstandig om de status van de webserver te verifiëren voordat u verdere configuraties uitvoert.

Voer het volgende uit om de status van Nginx te controleren:

systemctl status nginx

Als de webserver actief is, krijgt u onderstaande melding.

Als u de Nginx-webserver opnieuw wilt opstarten, voert u de opdracht uit.

systemctl restart nginx

Om Nginx te stoppen, geeft u de opdracht.

systemctl stop nginx

Om de webserver te starten, voert u uit.

systemctl start nginx

Om de Nginx-webserver te configureren om te starten tijdens het opstarten.

systemctl enable nginx

Lees ook: 10 meest gebruikte Nginx-opdrachten die elke Linux-gebruiker moet kennen

Stap 4: Configureer de firewall om de Nginx-poort te openen

Nu Nginx succesvol is geïnstalleerd en actief is, moeten we webtoegang tot de service toestaan, vooral voor externe gebruikers. Als u de UFW-firewall hebt ingeschakeld, moet u HTTP-toegang via de firewall toestaan.

Om dit te bereiken, voert u de opdracht uit.

sudo ufw allow 'Nginx HTTP'

Laad vervolgens de firewall opnieuw om de wijzigingen door te voeren.

sudo ufw reload

Geweldig, nu kun je verifiëren dat HTTP door de firewall wordt toegelaten door te draaien.

sudo ufw status

Uit het bovenstaande fragment kunnen we duidelijk zien dat Nginx HTTP is toegestaan via de UFW-firewall.

Stap 5: Toegang tot de Nginx-webserver

We hebben tot nu toe de basisconfiguraties gemaakt om Nginx operationeel te krijgen. Om via de webbrowser toegang te krijgen tot de webserver, bladert u door het IP-adres van de server, zoals weergegeven.

http://server-IP-address

Dit is een bevestiging dat Nginx actief is.

Stap 6: Nginx-serverblokken configureren op Debian 10

Dit is een optionele stap en is handig als u meerdere domeinen wilt hosten op een Nginx-webserver. Om dit te laten werken, moet er een domeinnaam naar uw Debian-server verwijzen.

Voor dit gedeelte gebruiken we de domeinnaam linux-console.net waarvan het A-record verwijst naar het IP-adres van de server 192.168.0.104.

Wanneer u de domeinnaam naar het IP-adres van uw server verwijst, zal de domeinnaam snel veranderen en naar uw webserver verwijzen, zoals weergegeven.

Laten we nu een serverblok maken.

Laten we eerst een map voor ons domein maken, zoals weergegeven.

sudo mkdir -p /var/www/html/linux-console.net

Wijs vervolgens het vereiste bestandseigendom toe, zoals weergegeven.

sudo chown -R $USER:$USER /var/www/html/linux-console.net

Wijs vervolgens lees- en uitvoerrechten toe aan de groep en de openbare gebruikers, zoals weergegeven.

sudo chmod -R 755 /var/www/html/linux-console.net

Laten we nu een eenvoudige index.html voorbeeldpagina maken met de vim-teksteditor.

sudo vim /var/www/html/linux-console.net/index.html

Voeg wat voorbeeldinhoud toe aan het bestand. Dit wordt weergegeven in de browser.

<html>
    <head>
        <title>Welcome to Linux geeks</title>
    </head>
    <body>
        <h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
    </body>
</html>

Sla op en sluit de editor af

Om deze inhoud te kunnen aanbieden, moet er een serverblok worden gemaakt.

Laten we een serverblok maken

vim  /etc/nginx/sites-available/linux-console.net

Kopieer en plak de volgende inhoud in het serverblokbestand.

server {
        listen 80;
        listen [::]:80;

        root /var/www/html/linux-console.net;
        index index.html index.htm index.nginx-debian.html;

        server_name linux-console.net linux-console.net;

        location / {
                try_files $uri $uri/ =404;
        }
}

Zorg ervoor dat u de domeinnaam linux-console.net bijwerkt met uw eigen domeinnaam.

Om het serverblokbestand te activeren of in te schakelen, maakt u een symbolische link zoals weergegeven.

sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/

Om te verifiëren dat alle instellingen in Nginx correct zijn geconfigureerd, voert u het programma uit.

sudo nginx -t

Geweldig, we zijn klaar om te gaan! Start Nginx eindelijk opnieuw op.

sudo systemctl restart nginx

Ga naar uw browser en ververs en als alles goed is gegaan, zou de browser uw serverblok-webpagina moeten weergeven zoals weergegeven.

Stap 7: Toegang tot Nginx-logbestanden

Voor toegang tot logbestanden over verzoeken aan uw server, opent u het onderstaande bestand.

sudo vim /var/log/nginx/access.log 

Als u fouten tegenkomt op uw Nginx-webserver, onderzoekt u het bestand op fouten.

sudo vim /var/log/nginx/error.log
Conclusie

In deze handleiding heeft u geleerd hoe u Nginx op uw Debian 10-instantie installeert en deze verder configureert om aanvullende domeinen te ondersteunen. We hopen dat u deze gids inzichtelijk vond. Uw feedback wordt op prijs gesteld..