Para aquellos que usan Debian 11, es posible que hayas notado que instalar Nginx directamente desde El repositorio de Debian no se instala la última versión estable o principal . Está bastante por detrás de donde Nginx es estable, y Mainline está en el momento actual de su desarrollo.
Para la mayoría, se preferirá usar el Nginx predeterminado que viene incluido con Debian, pero para aquellos que deseen usar versiones más nuevas para las funciones más recientes, el siguiente tutorial cubrirá los pasos necesarios para hacerlo.
Requisitos
- SO recomendado: Diana de Debian 11
- Cuenta de usuario: Una cuenta de usuario con sudo o acceso root.
Actualizar Sistema Operativo
Actualice su Debian sistema operativo para asegurarse de que todos los paquetes existentes estén actualizados:
sudo apt update && sudo apt upgrade -y
El tutorial usará el comando sudo y asumiendo que tiene estado sudo .
Para verificar el estado de sudo en su cuenta:
sudo whoami
Ejemplo de salida que muestra el estado de sudo:
[joshua@debian~]$ sudo whoami
root
Para configurar una cuenta Sudo existente o nueva, visite nuestro tutorial sobre Agregar un usuario a Sudoers en Debian .
Para usar la cuenta raíz , use el siguiente comando con la contraseña de root para iniciar sesión.
su
Eliminar la instalación anterior de Nginx
Primero, debe eliminar cualquier instalación anterior de Nginx que están activos antes de instalar Nginx Mainline.
Detenga Nginx usando el systemctl comando de la siguiente manera:
systemctl stop nginx
Haga una copia de su nginx.conf archivo para copia de seguridad en caso de que accidentalmente sobrescriba o elimine el existente:
cp /etc/nginx/nginx.conf /etc/nginx/nginx-backup.conf
A continuación, elimine Nginx con el siguiente comando:
apt remove nginx
Instalar paquetes requeridos
Se requerirán algunos paquetes adicionales para instalar las últimas versiones de la línea principal de Nginx o estable desde el repositorio oficial de Nginx. Ejecute el siguiente comando para instalar o verificar si están instalados en su sistema Debian Bullseye:
apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring
Importar los repositorios de Ngnix
A continuación, se necesitarán algunos pasos para importar correctamente el repositorio de la siguiente manera.
Importar clave GPG
Usando el comando curl , importe la clave GPG para que el administrador de paquetes APT pueda verificar la autenticidad de los paquetes principales de Nginx:
curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
| sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
Muy la clave GPG
A continuación, se recomienda probar y verificar que el archivo de descarga contenga la clave adecuada. Para hacer esto, use el siguiente comando en su terminal:
gpg --dry-run --quiet --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg
Debería aparecer el resultado de ejemplo:
pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62
uid nginx signing key <[email protected]>
Importar repositorio principal de Nginx
Para configurar e importar el repositorio de Nginx Mainline, ejecute el siguiente comando en su terminal:
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list
Importar repositorio estable de Nginx
Al igual que Nginx Mainline como arriba, para Nginx Stable, use el siguiente comando en su terminal:
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/debian `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list
Fije la versión del repositorio de Nginx para instalar
A continuación, use el siguiente comando de fijación para que Debian use el repositorio de Nginx sobre el repositorio predeterminado de Debian Nginx:
echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
| sudo tee /etc/apt/preferences.d/99nginx
Ejemplo de salida:
se o=nginx\nPin-Priority: 900\n" \
| sudo tee /etc/apt/preferences.d/99nginx
Package: *
Pin: origin nginx.org
Pin: release o=nginx
Pin-Priority: 900
Instalar Nginx Mainline o Stable
Ahora que ha configurado el repositorio, antes de ejecutar el comando de instalación de Nginx, debe actualizar su lista de repositorios para reflejar los nuevos cambios de la siguiente manera:
apt upgrade
A continuación, ejecute el comando de instalación de Nginx, esto instalará la última versión de Nginx del repositorio que importó, ya sea principal o estable:
apt install nginx -y
Tenga en cuenta que es posible que se le pida que mantenga o reemplace su /etc/nginx/ existente nginx.conf archivo de configuración durante la instalación. Se recomienda mantener su archivo de configuración actual presionando (n) . Se realizará una copia independientemente de la versión del mantenedor, y también puede verificar esto en el futuro.
Verifique si Nginx se instaló correctamente y en la última versión ejecutando el siguiente comando:
sudo nginx -v
Salida de ejemplo (ejemplo de línea principal de Nginx)
nginx version: nginx/1.21.1
Como se indicó anteriormente, la versión instalada correctamente en el momento de escribir este artículo es la última versión de Nginx Mainline.
De forma predeterminada, Nginx debe estar habilitado si no está activado. usar:
sudo systemctl start nginx
Para permitir que Nginx se inicie en el arranque, use el siguiente comando:
sudo systemctl enable nginx
Ejemplo de salida si tiene éxito:
Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nginx
Verificar el estado de Nginx:
sudo systemctl status nginx
Ejemplo de salida:
Actualización de Nginx
Para futuras actualizaciones, todo lo que necesita hacer es ejecutar el administrador de paquetes APT como lo haría con su sistema en busca de actualizaciones como de costumbre.
apt upgrade
Si hay una actualización disponible, ejecute el siguiente comando, que es el mismo que el inicio del tutorial para actualizar su sistema Debian:
apt upgrade
Opción de instalación alternativa:repositorio de Ondřej Surý
Un método alternativo es instalar la última versión principal o estable de Nginx desde el repositorio de Ondřej Surý. Muchos usuarios de Ubuntu conocerían su PPA y tú puedes hacer prácticamente lo mismo en Debian.
Para usar la última versión de la línea principal o estable de Nginx, primero deberá importar el repositorio.
Para importar el repositorio principal:
curl -sSL https://packages.sury.org/nginx-mainline/README.txt | sudo bash -x
Para importar un repositorio estable:
curl -sSL https://packages.sury.org/nginx/README.txt | sudo bash -x
Actualiza tu repositorio para reflejar el nuevo cambio:
apt upgrade
Ahora que ha instalado el repositorio de Nginx y actualizó la lista de repositorios, instale Nginx con lo siguiente:
apt install nginx-core nginx-common nginx nginx-full
Ejemplo de salida:
Tipo Y , luego presione la tecla Intro para continuar y completar la instalación.
Tenga en cuenta que es posible que se le pida que mantenga o reemplace su /etc/nginx/ existente nginx.conf archivo de configuración durante la instalación. Se recomienda mantener su archivo de configuración actual presionando (n) . Se realizará una copia independientemente de la versión del mantenedor, y también puede verificar esto en el futuro.
Notará que habrá módulos adicionales disponibles en esta versión, sobre todo la compatibilidad con brotli. Para instalar brotli, siga los pasos a continuación.
Abra su nginx.conf archivo de configuración:
nano /etc/nginx/nginx.conf
Ahora agregue las líneas adicionales antes en el HTTP{} sección:
brotli on;
brotli_comp_level 6;
brotli_static on;
brotli_types application/atom+xml application/javascript application/json application/rss+xml
application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype
application/x-font-ttf application/x-javascript application/xhtml+xml application/xml
font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon
image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;
El brotli_comp_level se puede establecer entre 1 (más bajo) y 11 (más alto) . Por lo general, la mayoría de los servidores se ubican en el medio, pero si su servidor es un monstruo, configúrelo en 11 y controle los niveles de uso de la CPU.
A continuación, pruebe para asegurarse de que los cambios funcionan correctamente antes de implementarlos:
sudo nginx -t
Si los cambios funcionan correctamente, debería ver lo siguiente:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Ahora haga los cambios en vivo reiniciando su servidor:
sudo systemctl restart nginx