Установка Nginx и первая страница: что проверить заранее
За 10–15 минут вы установите Nginx на Ubuntu 24.04, запустите сервис и откроете свою HTML-страницу по IP-адресу сервера. Показываем, какие доступы нужны и где искать ошибки.

На чистом сервере с Ubuntu 24.04 первую HTML-страницу через Nginx можно открыть примерно за 10–15 минут. Вам понадобятся SSH-доступ с правами администратора, публичный IP-адрес и компьютер с SSH-клиентом. Ниже — минимальный путь: установить пакет из репозитория Ubuntu, проверить конфигурацию, положить страницу в каталог сайта и убедиться, что сервер отвечает.
Что подготовить до установки
Инструкция рассчитана на Ubuntu Server 24.04 LTS и пакет Nginx из официального репозитория дистрибутива. В Ubuntu 24.04 обычно устанавливается ветка Nginx 1.24.x; точную версию после установки нужно проверить командой nginx -v. На другой операционной системе имена пакетов, пути и команды управления сервисом могут отличаться.
- сервер с Ubuntu 24.04 LTS;
- IP-адрес сервера, по которому к нему можно подключиться из интернета;
- SSH-логин и права
sudo; - локальный SSH-клиент: OpenSSH в Linux и macOS или встроенный клиент Windows;
- текст страницы, которую вы хотите показать посетителю.
Домен на первом этапе не нужен. Для проверки достаточно открыть IP-адрес сервера в браузере. HTTPS, DNS и публикация нескольких сайтов — следующий слой настройки, а не условие для первой страницы.
Сноска. Server block — блок конфигурации Nginx, который описывает отдельный сайт: его домен, каталог файлов и правила обработки запросов. В старых конфигурациях его часто называют virtual host.
Первая проверка должна отделять проблемы приложения от проблем сервера: сначала добейтесь ответа по IP с простой статической страницей, а уже потом подключайте домен и CMS.
Пошаговая установка Nginx
- Подключитесь к серверу. В терминале выполните команду, заменив адрес и имя пользователя своими данными:
ssh YOUR_USER@YOUR_SERVER_IPЕсли SSH использует нестандартный порт, добавьте параметр
-p YOUR_SSH_PORT. После подключения проверьте, что у пользователя есть права администратора:sudo -vПроверка: команда завершается без сообщения о необходимости пароля или с запросом пароля пользователя. Если появляется ошибка о недоступных правах, нужен другой аккаунт или настройка
sudoна сервере. - Обновите список пакетов и установите Nginx. Обновление списка не меняет систему, а только получает актуальные сведения о доступных пакетах:
- Убедитесь, что сервис запущен и будет стартовать после перезагрузки. В Ubuntu пакет обычно запускает Nginx автоматически, но лучше явно зафиксировать нужное состояние:
- Проверьте ответ локально. Запрос с самого сервера помогает понять, работает ли Nginx независимо от брандмауэра и сети:
- Создайте первую страницу. Каталог
/var/www/htmlиспользуется стандартным сайтом Ubuntu. Команда ниже перезапишет только файлindex.html, не меняя конфигурацию Nginx: - Откройте страницу по IP-адресу. В браузере перейдите по адресу
http://YOUR_SERVER_IP. Если вы проверяете с самого сервера, повторите:
sudo apt update
sudo apt install -y nginx
Проверка: установка завершается сообщением без ошибок, а команда показывает версию:
nginx -v
Ожидайте строку с версией вида nginx/1.24.x. Последняя цифра зависит от обновлений репозитория Ubuntu.
sudo systemctl enable --now nginx
sudo systemctl status nginx --no-pager
Проверка: в статусе есть Active: active (running). Для выхода из просмотра статуса нажмите Enter. Если сервис не запустился, не переходите к странице — сначала проверьте конфигурацию в разделе об ошибках.
curl --head http://127.0.0.1
Проверка: среди заголовков есть строка HTTP/1.1 200 OK или другой успешный статус из диапазона 2xx. Если соединение отклонено, сервис не слушает HTTP-порт или завершился после запуска.
sudo tee /var/www/html/index.html > /dev/null <<'EOF'
<!doctype html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Первая страница Nginx</title>
</head>
<body>
<h1>Nginx работает</h1>
<p>Эта страница отдана веб-сервером.</p>
</body>
</html>
EOF
Проверка: команда завершается без ошибки, а файл существует:
ls -l /var/www/html/index.html
В выводе должен появиться файл с владельцем и правами доступа. Для чтения веб-сервером достаточно, чтобы файл был доступен на чтение всем пользователям.
curl http://127.0.0.1
Проверка: в браузере появляется заголовок «Nginx работает», а curl возвращает HTML из созданного файла. Если в браузере показывается стандартная страница Ubuntu, проверьте, что вы открываете правильный IP и что файл записан именно в /var/www/html/index.html.
Если страница не открылась
«E: Unable to locate package nginx»
Система не видит пакет в подключённых репозиториях. Проверьте, что это Ubuntu 24.04, сервер имеет доступ в интернет и команда sudo apt update завершилась без ошибок. Сообщения о недоступном зеркале или проблемах DNS нужно исправить до повторной установки.
«nginx: [emerg] bind() ... address already in use»
Порт 80 уже занят другим процессом. Узнайте, кто его слушает:
sudo ss -ltnp 'sport = :80'
Остановите ненужный сервис только после проверки, что он не обслуживает другой сайт. Если порт занят Apache или другим веб-сервером, нельзя бездумно выключать его на рабочем сервере: сначала определите, какие сайты от него зависят.
«curl: (7) Failed to connect»
Если локальный запрос к 127.0.0.1 не проходит, проверьте статус Nginx и журнал:
sudo systemctl status nginx --no-pager
sudo journalctl -u nginx -n 50 --no-pager
Если локальный запрос успешен, а браузер с вашего компьютера не подключается, причина обычно во внешнем firewall, правилах облачного провайдера или неверном IP. Проверьте, разрешён ли входящий TCP-порт 80.
«403 Forbidden»
Nginx видит каталог, но не может отдать файл или не находит доступный индекс. Проверьте имя файла, права и текущую конфигурацию:
ls -ld /var/www /var/www/html
ls -l /var/www/html
sudo nginx -T
В выводе nginx -T найдите активный блок с директивой root. Она может указывать не на /var/www/html, а на другой каталог.
«nginx: [emerg] ... in /etc/nginx/...»
В конфигурации синтаксическая ошибка. Перед каждым перезапуском проверяйте её отдельной командой:
sudo nginx -t
Команда должна закончиться строками syntax is ok и test is successful. Исправьте файл и повторите проверку. Не перезапускайте Nginx вслепую: ошибка может оставить сайт недоступным.
Что делать дальше
После первой страницы проверьте, какой server block отвечает на запрос и какой каталог указан в директиве root. Затем привяжите домен через DNS, создайте отдельный блок конфигурации для сайта и настройте HTTPS. Для публичного проекта также включите резервное копирование файлов и проверьте журналы:
sudo tail -f /var/log/nginx/access.log
sudo tail -f /var/log/nginx/error.log
Смотрите не только на доступность страницы, но и на коды ответов: 2xx означает успешную выдачу, 4xx — проблему запроса или доступа, 5xx — ошибку на стороне сервера. Когда появится приложение, измеряйте время ответа и число ошибок отдельно для статических файлов и динамических запросов.
Саммаризатор: 50 страниц или созвон — в 5 главных тезисов.
Спросить за 15 ₽Источники: Nginx Documentation, Ubuntu Packages: nginx for Noble
Частые вопросы
Нужен ли домен, чтобы установить Nginx?
Можно ли установить Nginx без прав sudo?
Почему Nginx установлен, но браузер не открывает страницу?
Что делать, если порт 80 уже занят?
Нужно ли перезапускать Nginx после изменения HTML-файла?
Безопасно ли оставлять первую страницу доступной по HTTP?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.