Как быстро установить Nginx 1.24 на Ubuntu (20.04/22.04/24.04)

Короткий ответ: добавьте официальный репозиторий nginx.org (stable), обновите apt и установите nginx — это даст Nginx 1.24 на Ubuntu 20.04/22.04; на 24.04 версия 1.24 может быть уже в стандартных репозиториях.

Подготовка и проверка совместимости

  1. Обновите систему и установите утилиты:
sudo apt update && sudo apt upgrade -y
sudo apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring -y
  1. Узнайте кодовое имя релиза:
lsb_release -cs   # focal, jammy, noble и т.д.
cat /etc/os-release
  1. Если включен UFW — откройте порт заранее:

Разрешите трафик HTTP/HTTPS: sudo ufw allow 'Nginx Full'

Добавление официального репозитория и установка Nginx 1.24

Рекомендуемый способ — репозиторий nginx.org (stable). Выполните под root или с sudo:

  1. Добавьте GPG‑ключ:
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor -o /usr/share/keyrings/nginx-archive-keyring.gpg
  1. Создайте файл источников, подставив кодовое имя:
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

(Если нужно mainline, замените nginx на nginx-mainline в URL по официальной инструкции nginx.org.)

  1. Обновите индекс и установите:
sudo apt update
sudo apt install nginx -y
  1. Фиксация версии (опционально):
# Посмотреть доступные версии:
apt policy nginx

# Зафиксировать текущую установленную версию
sudo apt-mark hold nginx

Если нужен именно пакет 1.24.x и репозиторий содержит более свежую версию, можно выбрать точную версию через apt install, но обычно достаточно добавить nginx.org и установить стандартно.

Переход с устаревшей версии на 1.24

  1. Остановите сервис перед заменой:
sudo systemctl stop nginx
  1. Добавьте репозиторий (как выше), затем:
sudo apt update
sudo apt install --only-upgrade nginx -y
  1. Проверьте конфигурацию и запустите сервис:
sudo nginx -t
sudo systemctl start nginx
sudo systemctl enable nginx

Проверка установки и статус

  • Версия Nginx:
nginx -v   # nginx version: nginx/1.24.x
  • Статус службы:
sudo systemctl status nginx
  • Проверка репозитория и доступных версий:
apt policy nginx
  • Открыть в браузере: http://YOUR_SERVER_IP — вы должны увидеть стандартную страницу Nginx.

Если при старте возникает ошибка "Job for nginx.service failed", сначала выполните sudo nginx -t и проверьте логи /var/log/nginx/error.log; убедитесь, что порт 80/443 свободен (sudo ss -tlnp | grep -E ':(80|443)').

Частые ошибки

  • Конфликт портов: другой сервис уже слушает 80/443 (apache, snap).
  • Неправильный GPG‑ключ или опечатка в sources.list — apt не подтянет пакеты.
  • Проблемы с конфигом после обновления — всегда проверяйте sudo nginx -t перед запуском.
  • Автообновление на более новую ветку — используйте apt-mark hold, если нужна именно 1.24.

FAQ

  • Нужен ли компиляция из исходников? Нет — официальный репозиторий предоставляет готовые пакеты. Компиляция нужна только при нестандартных модулях.
  • Ubuntu 24.04 уже содержит 1.24? Часто да — проверьте apt policy nginx; если доступна 1.24, достаточно sudo apt install nginx.
  • Как вернуть старую версию? Установите нужный пакет из кэша или скачайте .deb и поставьте через dpkg, затем зафиксируйте apt-mark hold.

Теперь ваш сервер готов к деплою на Nginx 1.24. Перед production‑запуском протестируйте конфигурации и SSL (Let's Encrypt или другой CA).