Android

Hur man ställer in nginx-serverblock på ubuntu 18.04

How To Setup Nginx With SSL Certificates On Ubuntu 18.04 LTS Linux

How To Setup Nginx With SSL Certificates On Ubuntu 18.04 LTS Linux

Innehållsförteckning:

Anonim

Med Nginx Server Blocks kan du köra mer än en webbplats på en enda maskin. Med Serverblocks kan du ange platsdokumentroten (katalogen som innehåller webbplatsfilerna), skapa en separat säkerhetspolicy för varje webbplats, använda olika SSL-certifikat för varje webbplats och mycket mer.

I den här tutorialen kommer vi att ge steg för steg instruktioner om hur du ställer in Nginx-serverblock (liknande Apache Virtual Hosts) på Ubuntu 18.04.

förutsättningar

Se till att du har uppfyllt följande förutsättningar innan du fortsätter med denna handledning:

  • Du har ett domännamn som pekar på din offentliga server-IP. I denna handledning kommer vi att använda example.com Du har Nginx installerat genom att följa dessa instruktioner. Du är inloggad som användare med sudo-privilegier.
I en del dokumentation ser du Server Blocks kallas Virtual host . En virtuell värd är en Apache-term.

Skapa katalogstrukturen

Dokumentrot är katalogen där webbplatsfilerna för ett domännamn lagras och serveras som svar på förfrågningar. Vi kan ställa in dokumentroten till vilken plats vi vill, men i den här guiden kommer vi att använda följande katalogstruktur:

/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html

I grunden skapar vi en separat katalog för varje domän som vi vill ha på vår server i katalogen /var/www . Inom varje katalog skapar vi en public_html katalog som lagrar domänens webbplatsfiler.

Låt oss skapa rotkatalogen för vårt example.com :

sudo mkdir -p /var/www/example.com/public_html

För teständamål kommer vi att skapa en index.html fil i domänens dokumentrotkatalog.

Öppna din redigerare och skapa demofilen:

/var/www/example.com/public_html/index.html

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

I den här guiden kör vi kommandona som sudo-användare och de nyligen skapade filer och kataloger ägs av rotanvändaren.

För att undvika behörighetsproblem kan vi ändra äganderätten till domändokumentets rotkatalog till Nginx-användaren ( www-data ):

sudo chown -R www-data: /var/www/example.com

Skapa ett serverblock

Som standard på Ubuntu-system lagras konfigurationsfiler för Nginx- /etc/nginx/sites-available i /etc/nginx/sites-available katalog, som aktiveras genom symboliska länkar till /etc/nginx/sites-enabled/ katalog.

Öppna din redigerare som du väljer och skapa följande serverblockfil:

/etc/nginx/sites-available/example.com

server { listen 80; listen:80; root /var/www/example.com/public_html; index index.html; server_name example.com www.example.com; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location / { try_files $uri $uri/ =404; } }

Du kan namnge konfigurationsfilen som du vill men vanligtvis är det bäst att använda domännamnet.

För att aktivera den nya serverblockfilen måste vi skapa en symbolisk länk från filen till den sites-enabled katalogen, som läses av Nginx vid start:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Testa Nginx-konfigurationen för korrekt syntax:

sudo nginx -t

Om det inte finns några fel kommer utdata att se ut så här:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Starta om Nginx-tjänsten så att ändringarna träder i kraft:

sudo systemctl restart nginx

Slutligen för att verifiera att serverblocket fungerar som förväntat, öppna http://example.com i din webbläsare som du väljer, så ser du något liknande:

Slutsats

Du har lärt dig hur du skapar en Nginx-serverblockkonfiguration för att vara värd för flera domäner på en enda Ubuntu-server. Du kan upprepa stegen som beskrivs ovan och skapa ytterligare serverblock för alla dina domäner.

Säkra Nginx med Let's Encrypt på Ubuntu 18.04

nginx ubuntu

Det här inlägget är en del av hur man installerar-lemp-stack-on-ubuntu-18-04-serien.

Andra inlägg i denna serie:

• Hur man installerar Nginx på Ubuntu 18.04 • Hur man installerar Nginx-serverblock på Ubuntu 18.04 • Säkra Nginx med Let's Encrypt på Ubuntu 18.04 • Hur man installerar MySQL på Ubuntu 18.04 • Hur man installerar PHP på Ubuntu 18.04