Com configurar els blocs del servidor Nginx (amfitrions virtuals) a Ubuntu 20.04


De vegades, és possible que hàgiu d'allotjar més d'un domini o lloc web al vostre servidor web Nginx. Perquè això passi, cal configurar un bloc de servidors (amfitrions virtuals) per encapsular tota la configuració del vostre domini. Els blocs del servidor Nginx són sinònims de fitxers d'amfitrió virtual d'Apache i tenen el mateix propòsit.

Aquest tema demostra com configurar un bloc de servidor Nginx a Ubuntu 20.04.

  • Un registre A definit al proveïdor d'allotjament del vostre nom de domini. Un registre A és un registre DNS que apunta el nom del domini a l'adreça IP del servidor públic. Per a aquesta guia, utilitzarem el nom de domini crazytechgeek.info amb finalitats il·lustratives.
  • Una pila LEMP instal·lada a la instància Ubuntu 20.04 LTS.
  • Un usuari d'inici de sessió amb privilegis de Sudo.

Amb tots els requisits complerts, explorem com podeu configurar un bloc de servidor Nginx a Ubuntu.

Pas 1: creeu un directori arrel de documents Nginx

Per començar, crearem un directori separat per al nostre domini que contindrà tota la configuració relacionada amb el domini.

$ sudo mkdir -p /var/www/crazytechgeek.info/html

A continuació, assigneu la propietat del directori mitjançant la variable d'entorn $USER. Això assigna la propietat del directori a l'usuari connectat actualment. Assegureu-vos que heu iniciat sessió amb el compte d'un usuari normal i no com a root.

$ sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html

A continuació, assigneu els permisos adequats al directori, concedint a l'usuari connectat tots els drets (llegir, escriure i executar) i només permisos de lectura i execució al grup i altres usuaris.

$ sudo chmod -R 755 /var/www/crazytechgeek.info

Amb els permisos i la propietat del directori configurats correctament, hem de crear una pàgina web de mostra per al domini.

Pas 2: creeu una pàgina de mostra per al domini

En aquest pas, crearem un fitxer index.html amb finalitats de prova. Aquest fitxer servirà contingut que es mostrarà al navegador web quan es cridi al domini al navegador.

$ sudo vim /var/www/crazytechgeek.info/html/index.html

Enganxeu el següent contingut HTML.

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
  <h1>Bravo! Your server block is working as expected!</h1>
    </body>
</html>

Deseu i sortiu del fitxer de configuració.

Pas 3: creeu un bloc de servidor Nginx a Ubuntu

Els blocs del servidor Nginx es troben al directori /etc/nginx/sites-available. El bloc del servidor Nginx predeterminat és /etc/nginx/sites-available/default que serveix el fitxer HTML predeterminat a /var/www/html/index.nginx-debian.html.

Per al nostre cas, hem de crear un bloc de servidor que servirà el contingut del fitxer index.html que hem creat anteriorment.

Per tant, creeu el fitxer de bloqueig del servidor que es mostra.

$ sudo vim /etc/nginx/sites-available/crazytechgeek.info

Enganxeu el contingut a continuació:

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

        root /var/www/crazytechgeek.info/html;
        index index.html index.htm index.nginx-debian.html;

        server_name crazytechgeek.info www.crazytechgeek.info;

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

		
    access_log /var/log/nginx/crazytechgeek.info.access.log;
    error_log /var/log/nginx/crazytechgeek.info.error.log;

}

Desa i surt del fitxer.

Pas 4: habiliteu el bloc del servidor Nginx a Ubuntu

Per habilitar el bloc del servidor Nginx, heu d'enllaçar-lo simbòlicament al directori /etc/nginx/sites-enabled/ tal com es mostra.

$ sudo ln -s /etc/nginx/sites-available/crazytechgeek.info /etc/nginx/sites-enabled/

En aquest punt, estem pràcticament acabats. Tanmateix, és prudent confirmar que totes les configuracions estan en ordre. Per fer-ho, executeu l'ordre:

$ sudo nginx -t

Si heu seguit correctament els nostres passos, hauríeu d'obtenir la sortida que es mostra:

Finalment, reinicieu Nginx perquè els canvis fets als fitxers de configuració tinguin efecte.

$ sudo systemctl restart Nginx

A continuació, confirmeu si Nginx s'està executant executant l'ordre que es mostra:

$ sudo systemctl status Nginx

Pas 5: provant el bloc del servidor Nginx a Ubuntu

Per confirmar si el bloc del servidor funciona com s'esperava i publica contingut al directori /var/www/crazytechgeek.info, obriu el vostre navegador web i navegueu pel nom de domini del vostre servidor:

http://domain-name

Hauríeu d'obtenir el contingut del fitxer HTML al bloc del vostre servidor, tal com es mostra.

En aquesta guia, us hem mostrat com configurar un bloc de servidor Nginx mitjançant un únic domini a Ubuntu Linux. Podeu repetir els mateixos passos per a diferents dominis i aconseguir els mateixos resultats. Esperem que la guia hagi estat entenedora.