Instalación, configuración e uso de nginx

De MediaWiki
Ir a la navegación Ir a la búsqueda

Prerequisitos

A práctica pode levarse a cabo a través de máquinas virtuais en entorno local.

No aquí detallado, fíxose a través da contratación dun VPS (Virtual Private Server) en Contabo e do dominio aclasedopeque.com en namecheap.com. O sistema operativo utilizado foi Debian 11.

Hosting

Dominio e configuración DNS

https://youtu.be/YbJr7YPmDsQ https://www.namecheap.com/support/knowledgebase/article.aspx/10275/2255/video-how-to-set-up-an-a-record-in-cpanel/ https://www.namecheap.com/support/knowledgebase/article.aspx/10275/2255/video-how-to-set-up-an-a-record-in-cpanel/ https://www.namecheap.com/support/knowledgebase/article.aspx/10237/2255/video-how-to-connect-a-domain-name-to-your-shared-hosting/ https://www.namecheap.com/support/knowledgebase/article.aspx/579/2237/which-record-type-option-should-i-choose-for-the-information-im-about-to-enter/

Conexión á máquina por SSH

Pódese levar a cabo con calquer cliente SSH, coma Putty:


Ou cun cliente multiplataforma coma pode ser Termius:


En ambos casos será preciso:

  1. Introducir IP da máquina
  2. Introducir usuario e contrasinal
  3. Aceptar que se confía na conexión

Instalación

Para levar a cabo a instalación actualizamos o repositorio e instalamos o paquete nginx:

apt update
apt install nginx -y

Comprobamos que queda levantado:

systemctl status nginx

Comprender o funcionamento

Podemos instalar o comando tree que amosa os ficheiros xerárquicamente estruturados por cartafois:

apt install tree

Accedemos a carpeta onde queda instalado nginx:

cd /etc/nginx

Podemos executar tree para ver a estrutura de carpetas e ficheiros do programa:

tree .


conf.d configuraciones propias de nuestro servidor modules-enabled modulos que queramos activar proxy_params parámetros del proxy nginx.com No tocar. Configuración global. cd sites-available/ cat default cd ../sites_enabled contiene enlaces simbolicos (un acceso directo que apunta al fichero real) nano default encriptacion punto a punto con nginx nano ngingx.conf


Configuración do firewall

Para instalar ufw:

apt install ufw

Para comprobar o seu estado:

ufw status

Para levantalo:

ufw enable

Para fixar reglas que permitan tráfico http e https:

ufw allow 80
ufw allow 443
ufw allow http
ufw allow https

Para comprobar estado e reccargar coas regras:

ufw status
ufw reload

Comprobación de logs

nano nginx.conf

Podemos observar onde se ubican as rutas de access_log e error_log, e consultar os mesmos:

cd /var/log/nginx/
pico access.log
pico error.log

Configuración dun server block

Un server block en nginx e o equivalente os denominados virtual host en Apache.

Vemos la web por defecto:

cd /var/www/html
pico index.nginx-debian.html

Cualquier cambio que hagamos y guardemos en este fichero se verá reflejado cuando accedamos a través del navegador.

Accedemos a sites-available:

cd /etc/nginx/sites-avaible

Podemos ver a configuración da web por defecto:

pico default

MOI IMPORTANTE. Unha vez feitos cambios e preciso recargalos co comando:

systemctl restart nginx

Engadir un server block

cd /etc/nginx/sites-avaible
pico aclasedopeque.com                                                        
server {
 server_name aclasedopeque.com www.aclasedopeque.com;

 root /var/www/aclasedopeque.com/htdocs;
}
cd /etc/nginx/sites-avaible
ln -s /etc/nginx/sites-available/aclasedopeque.com /etc/nginx/sites-enabled/aclasedopeque.com
systemctl restart nginx

Si accedemos a través del navegador, por ahora error 404 porque no existe la ruta /var/www/aclasedeopeque.com/htdocs.

 cd /var/www/
 mkdir aclasedopeque.com
 cd aclasedopeque.com
 mkdir htdocs
 cd htdocs
 pico index.html
 <h1>Esto es una prueba! </h1>

Accedemos co navegador a aclasedopeque.com ou www.aclasedopeque.com e amosa o texto:

Troubleshooting

Ferramentas de rede

ping, traceroute,nslookup, host, dig

systemctl

Podes comprobar o estado do servizo con:

systemctl status nginx

E sempre e preciso reinicialo tras facer cambios con:

systemctl restart nginx

nginx -t

Para axuda na procura de erros de sintaxe nos ficheiros de configuración existe este comando:

nginx -t

revisar ficheiros de configuración

Acceder a ruta:

cd /etc/nginx/conf.d

Aquí poderíanse engadir novos ficheiros de configuración.

erros frecuentes

  • duplicate default server error. Ver este fío

Ampliación

Referencias