Pràctica 4.1 – Instal·lació i configuració de servidor web NGINX
Requisits abans de començar la pràctica
Atenció, molt important abans de començar!
- Heu de tenir funcionant sense errors el vostre servidor DNS. És a dir, almenys la pràctica 3.1 ha de funcionar sense problemes.
- Comproveu-ho abans de començar aquesta pràctica
Instal·lació servidor web NGINX
Per instal·lar el servidor nginx en el Ubuntu Server, primer actualitzem els repositoris i després instal·lem el paquet corresponent:
sudo apt update
sudo apt install nginx
Comprovem que nginx s'ha instal·lat i que està funcionant correctament:
systemctl status nginx
Creació de les carpetes del lloc web
Igual que ocorre en Apache, tots els arxius que formaran part d'un lloc web que servirà nginx s'organitzaran en carpetes. Aquestes carpetes, típicament estan dins de /var/www
.
Així doncs, crearem la carpeta de nostre lloc web o domini:
sudo mkdir -p /var/www/vostre_domini/html
Com saber el meu nom de domini
Exemple
Si el meu ordinador és el 12, el meu nom de domini serà unai-lopez
, i si és el 4, el domini serà msuarez
(sense punts).
Recordeu, no heu de posar punts ni espais en el nom de domini.
Ací, dins d'aquesta carpeta html, heu de descomprimir un dels zip amb tots els arxius per al lloc web d'exemple que us he proporcionat.
Nota
NO és el mateix el vostre domini de zona de DNS, que el vostre domini per al vostre lloc web (bàsicament el nom que posem en la URL).
Per descomprimir, instal·leu-vos el paquet unzip:
apt get install unzip
unzip nom_arxiu.zip -d nom_directori
www-data
, típicament l'usuari del servici web.
sudo chown -R www-data:www-data /var/www/vostre_domini/html
sudo chmod -R 755 /var/www/vostre_domini
http://ip_vostre_servidor
El que demostra que tot és correcte fins ara.
Configuració de servidor web NGINX
En Nginx hi ha dues rutes importants. La primera d'elles és sites-available
, que conté els arxius de configuració dels hosts virtuals o blocs disponibles en el servidor. És a dir, cadascun dels llocs webs que alberga el servit.
L'altra és sites-enabled
, que conté els arxius de configuració dels llocs habilitats, és a dir, els que funcionen en aquest moment.
Dins de sites-available
hi ha un arxiu de configuració per defecte (default), que és la pàgina que es mostra si accedim al servidor sense indicar cap lloc web o quan el lloc web no és trobat en el servidor (a causa d'una mala configuració per exemple). Aquesta és la pàgina que ens ha aparegut en l'apartat anterior.
Per a que Nginx presente el contingut de la nostra web, és necessari crear un bloc de servidor amb les directives correctes. En comptes de modificar l'arxiu de configuració predeterminat directament, crearem un de nou en "/etc/nginx/sites-available/vostre_domini":
sudo nano /etc/nginx/sites-available/vostre_domini
server {
listen 80;
listen [::]:80;
root /ruta/absoluta/arxiu/index;
index index.html index.htm index.nginx-debian.html;
server_name vostre_domini www.vostre_domini;
location / {
try_files $uri $uri/ =404;
}
}
Ací la directiva root ha d'anar seguida de la ruta absoluta absoluta on es trobi l'arxiu index.html de la nostra pàgina web, que es troba entre tots els que heu descomprimit.
Ací teniu un exemple de un lloc webs amb la seva ruta (directoris que hi ha) abans de l'arxiu index.html:
Info
Ruta → /var/www/exemple2/html/2016_soft_landing
I crearem un arxiu simbòlic entre aquest arxiu i el de llocs que estan habilitats, perquè es doni d'alta automàticament.
sudo ln -s /etc/nginx/sites-available/vostre_domain /etc/nginx/sites-enabled/
Configuració del DNS
Per a poder accedir a vostre lloc web, necessitareu afegir una entrada en l'arxiu de zona del vostre DNS.
Necessiteu afegir un parell de registres del tipus CNAME, de tal forma que els dominis o noms de la vostra pàgina web (vostre_domini i www.vostre_domini), en realitat apuntin a dnsserver.vostre_nom.es. (recordeu que en l'última pràctica del Tema 3 vau canviar el domini sre.es. Per vostre_nom.es.)
Per a configurar un CNAME podeu buscar informació de com fer-ho en algun d'aquests llocs:
I reiniciem el servidor per aplicar la configuració:
sudo systemctl restart nginx
Comprovacions
Comprovació de funcionament correcte
Si tot ha anat bé, heu de poder accedir a vostre lloc web escrivint en la caixa de la URL del navegador:
http://vostre_domini
http://www.vostre_domini
Comprovar registres del servidor
Comproveu que les peticions s'estan registrant correctament en els arxius de logs, tant les correctes com les errònies:
/var/log/nginx/access.log
: cada sol·licitud al seu servidor web es registra en aquest arxiu de registre, de no ser que Nginx estiga configurat per fer alguna cosa diferent./var/log/nginx/error.log
: qualsevol error de Nginx s'assentarà en aquest registre.
Tasca a realitzar
Si volem tenir diversos dominis o llocs web en el mateix servidor nginx (és a dir, que tindran la mateixa IP) hem de repetir tot el procés anterior amb el nou nom de domini.
Configura un nou domini per a l'exemple de lloc web de l'altre .zip i documenta el procés.
El nou nom de domini serà el cognom del jugador que tinga el dorsal amb el mateix número que el vostre número d'ordinador, de la següent plantilla:
Qüestions finals
Questió 1
De quina altra forma alternativa podría resoldre el nom del meu domini web amb el servici DNS sense fer ús del register CNAME?
Questió 2
Què passa si no faig el link simbòlic entre sites-available
i sites-enabled
del meu lloc web?
Questió 3
Qué passa si no li done els permisos adeqüats a /var/www/vostre_domini
?
Questió 4
Podeu accedir desde la LAN (el vostre Lliurex) a la vostra web? Tant si es afirmatiu com negatiu, explica el motiu.
Questió 5
Si no ficarem cap entrada DNS a l'arxiu de zona, podrieu accedir encara a les vostres webs? Tant si es afirmatiu com negatiu, explica el motiu.
Avaluació
Criteri | Puntuació |
---|---|
Configuració correcta del servidor web | 1 punts |
Configuració correcta del DNS | 2 punts |
Comprovació del correcte funcionament | 1 punts |
Configuració correcta i comprovació del funcionament de una segona web | 2 punts |
Qüestions finals | 3 punts |
S'ha tingut cura amb el format del document, utilitzant la plantilla actualitzada i fent ús d'un correcte llenguatge tècnic | 0,5 punt |
S'ha inclòs la taula amb les IPs de cada màquina de la pràctica, tal i com es demana | 0,5 punt |