En aquest tema, aprendrem com configurar pàgines d'error personalitzades a NGINX. Les pàgines d'error personalitzades són útils per proporcionar una millor experiència d'usuari quan es produeixen errors en el servidor, com ara errors 404 (No trobat) o 500 (Error intern del servidor).
Objectius
- Entendre la importància de les pàgines d'error personalitzades.
- Aprendre a configurar pàgines d'error personalitzades a NGINX.
- Veure exemples pràctics de configuració.
- Realitzar exercicis pràctics per reforçar els conceptes apresos.
Importància de les pàgines d'error personalitzades
Les pàgines d'error personalitzades permeten:
- Proporcionar informació útil als usuaris sobre l'error.
- Mantenir la coherència del disseny del lloc web.
- Redirigir els usuaris a altres parts del lloc web.
- Millorar l'experiència d'usuari i la percepció del lloc web.
Configuració de pàgines d'error personalitzades a NGINX
Pas 1: Crear les pàgines d'error personalitzades
Primer, hem de crear les pàgines HTML que volem utilitzar com a pàgines d'error. Per exemple, podem crear una pàgina 404.html
i una pàgina 500.html
.
Exemple de 404.html
:
<!DOCTYPE html> <html lang="ca"> <head> <meta charset="UTF-8"> <title>Pàgina no trobada</title> <style> body { font-family: Arial, sans-serif; text-align: center; padding: 50px; } h1 { font-size: 50px; } p { font-size: 20px; } </style> </head> <body> <h1>404</h1> <p>Ho sentim, la pàgina que cerques no existeix.</p> <a href="/">Torna a la pàgina principal</a> </body> </html>
Exemple de 500.html
:
<!DOCTYPE html> <html lang="ca"> <head> <meta charset="UTF-8"> <title>Error intern del servidor</title> <style> body { font-family: Arial, sans-serif; text-align: center; padding: 50px; } h1 { font-size: 50px; } p { font-size: 20px; } </style> </head> <body> <h1>500</h1> <p>Ho sentim, hi ha hagut un error intern del servidor.</p> <a href="/">Torna a la pàgina principal</a> </body> </html>
Pas 2: Configurar NGINX per utilitzar les pàgines d'error personalitzades
Un cop creades les pàgines d'error, hem de configurar NGINX per utilitzar-les. Això es fa mitjançant la directiva error_page
al fitxer de configuració de NGINX.
Exemple de configuració:
server { listen 80; server_name exemple.com; root /var/www/exemple.com/html; index index.html; # Configuració de pàgines d'error personalitzades error_page 404 /404.html; location = /404.html { internal; } error_page 500 502 503 504 /500.html; location = /500.html { internal; } location / { try_files $uri $uri/ =404; } }
Explicació de la configuració
error_page 404 /404.html;
: Aquesta línia indica a NGINX que utilitzi la pàgina404.html
per als errors 404.location = /404.html { internal; }
: Aquesta línia defineix una ubicació interna per a la pàgina404.html
, de manera que només es pot accedir a ella a través de la directivaerror_page
.error_page 500 502 503 504 /500.html;
: Aquesta línia indica a NGINX que utilitzi la pàgina500.html
per als errors 500, 502, 503 i 504.location = /500.html { internal; }
: Aquesta línia defineix una ubicació interna per a la pàgina500.html
.
Pas 3: Reiniciar NGINX
Després de fer els canvis al fitxer de configuració, hem de reiniciar NGINX perquè els canvis tinguin efecte.
Exercicis pràctics
Exercici 1: Crear una pàgina d'error 403 personalitzada
- Crea una pàgina
403.html
amb un missatge d'error adequat. - Configura NGINX per utilitzar aquesta pàgina per als errors 403.
- Reinicia NGINX i prova d'accedir a una pàgina amb accés denegat per veure la pàgina d'error personalitzada.
Solució:
<!-- 403.html --> <!DOCTYPE html> <html lang="ca"> <head> <meta charset="UTF-8"> <title>Accés denegat</title> <style> body { font-family: Arial, sans-serif; text-align: center; padding: 50px; } h1 { font-size: 50px; } p { font-size: 20px; } </style> </head> <body> <h1>403</h1> <p>Ho sentim, no tens permís per accedir a aquesta pàgina.</p> <a href="/">Torna a la pàgina principal</a> </body> </html>
# Configuració de NGINX server { listen 80; server_name exemple.com; root /var/www/exemple.com/html; index index.html; # Configuració de pàgines d'error personalitzades error_page 403 /403.html; location = /403.html { internal; } location / { try_files $uri $uri/ =404; } }
Exercici 2: Configurar una pàgina d'error 502 personalitzada
- Crea una pàgina
502.html
amb un missatge d'error adequat. - Configura NGINX per utilitzar aquesta pàgina per als errors 502.
- Reinicia NGINX i prova d'accedir a una pàgina que generi un error 502 per veure la pàgina d'error personalitzada.
Solució:
<!-- 502.html --> <!DOCTYPE html> <html lang="ca"> <head> <meta charset="UTF-8"> <title>Error de passarel·la</title> <style> body { font-family: Arial, sans-serif; text-align: center; padding: 50px; } h1 { font-size: 50px; } p { font-size: 20px; } </style> </head> <body> <h1>502</h1> <p>Ho sentim, hi ha hagut un error de passarel·la.</p> <a href="/">Torna a la pàgina principal</a> </body> </html>
# Configuració de NGINX server { listen 80; server_name exemple.com; root /var/www/exemple.com/html; index index.html; # Configuració de pàgines d'error personalitzades error_page 502 /502.html; location = /502.html { internal; } location / { try_files $uri $uri/ =404; } }
Resum
En aquesta secció, hem après com configurar pàgines d'error personalitzades a NGINX. Hem vist la importància de tenir pàgines d'error personalitzades per millorar l'experiència d'usuari i hem après a configurar-les mitjançant exemples pràctics. A més, hem realitzat exercicis per reforçar els conceptes apresos. En el proper tema, explorarem el registre i els formats de registre a NGINX.
Curs de NGINX
Mòdul 1: Introducció a NGINX
Mòdul 2: NGINX com a servidor web
- Servint contingut estàtic
- Llistats de directoris
- Pàgines d'error personalitzades
- Registre i formats de registre