Руководство по установке Nginx: Пошаговая инструкция для начинающих

Освойте первоначальную настройку вашего высокоскоростного веб-сервера! Это исчерпывающее руководство проведет новичков через точную, пошаговую установку Nginx на системах Debian/Ubuntu и CentOS/RHEL. Изучите основные команды для запуска, остановки и проверки службы, а также важную конфигурацию брандмауэра для обеспечения немедленной доступности. Запустите свой веб-сервер Nginx в считанные минуты.

30 просмотров

Руководство по установке Nginx: Пошаговое для начинающих

Добро пожаловать в мир высокопроизводительных веб-серверов! Nginx (произносится «инжи-экс») стал стандартом де-факто для отдачи статического контента, а также используется в качестве обратного прокси, балансировщика нагрузки и HTTP-кэша. Для начинающих правильная первоначальная установка — это важнейший первый шаг на пути к использованию его скорости и эффективности.

В этом руководстве представлены четкие, практические пошаговые инструкции по установке Nginx в наиболее распространенных дистрибутивах Linux (Debian/Ubuntu и CentOS/RHEL). Мы также рассмотрим важные шаги по проверке после установки, чтобы убедиться, что ваш веб-сервер работает правильно и готов обрабатывать трафик.


Предварительные требования

Прежде чем приступить к процессу установки, убедитесь, что у вас есть:

  • Сервер или виртуальная машина с поддерживаемым дистрибутивом Linux (Ubuntu/Debian или CentOS/RHEL).
  • Настроенный непривилегированный (non-root) пользователь с правами sudo для выполнения административных задач.
  • Базовое знакомство с интерфейсом командной строки Linux (CLI).

Установка в системах Debian/Ubuntu

В системах на базе Debian Nginx легко доступен в стандартных репозиториях пакетов. Мы рекомендуем сначала обновить список пакетов, чтобы получить самую последнюю доступную версию.

Шаг 1: Обновление списков пакетов

Выполните следующие команды для обновления локального индекса пакетов:

sudo apt update

Шаг 2: Установка Nginx

Используйте команду apt install для загрузки и установки Nginx и его зависимостей:

sudo apt install nginx

Шаг 3: Проверка статуса установки

После завершения установки служба обычно запускается автоматически. Вы можете проверить ее статус с помощью systemctl:

sudo systemctl status nginx

Вы должны увидеть вывод, указывающий, что служба находится в состоянии active (running) (активна (запущена)).

Установка в системах CentOS/RHEL

В производных от Red Hat Enterprise Linux (RHEL), таких как CentOS или Fedora, Nginx обычно устанавливается с помощью менеджера пакетов yum или dnf. Поскольку Nginx может отсутствовать в стандартном базовом репозитории, для получения последней стабильной версии часто рекомендуется установка из официального репозитория EPEL (Extra Packages for Enterprise Linux).

Шаг 1: Установка репозитория EPEL

Сначала установите репозиторий EPEL, который содержит множество часто используемых, высококачественных пакетов, не включенных в стандартные репозитории.

Для CentOS/RHEL 7:

sudo yum install epel-release

Для CentOS/RHEL 8/9 (используя DNF):

sudo dnf install epel-release

Шаг 2: Установка Nginx

Теперь установите Nginx, используя yum или dnf:

# Использование yum (более старые системы)
sudo yum install nginx

# ИЛИ использование dnf (более новые системы)
sudo dnf install nginx

Шаг 3: Запуск и включение службы Nginx

В отличие от Debian/Ubuntu, Nginx может не запуститься автоматически после установки в системах на базе RHEL. Вам необходимо вручную запустить его и включить автозапуск при загрузке системы:

# Запуск службы немедленно
sudo systemctl start nginx

# Обеспечение запуска при перезагрузке
sudo systemctl enable nginx

# Проверка статуса
sudo systemctl status nginx

Настройка брандмауэра: Разрешение HTTP/HTTPS трафика

Важным шагом после установки является обеспечение того, чтобы ваш брандмауэр разрешал внешним подключениям достигать веб-сервера. Если вы пропустите этот шаг, внешние пользователи не смогут увидеть ваш сайт.

Использование UFW (Uncomplicated Firewall — часто встречается в Ubuntu/Debian)

При установке Nginx регистрирует специальные профили в UFW. Мы рекомендуем открыть порт 80 (HTTP) и опционально порт 443 (HTTPS).

# Показать доступные профили приложений
sudo ufw app list

# Разрешить стандартный веб-трафик (HTTP/HTTPS)
sudo ufw allow 'Nginx Full'

# Перезагрузить брандмауэр для применения изменений
sudo ufw reload

Использование Firewalld (часто встречается в CentOS/RHEL)

Firewalld использует зоны для управления правилами. Обычно мы добавляем службы в зону public.

# Разрешить HTTP трафик (порт 80)
sudo firewall-cmd --permanent --add-service=http

# Разрешить HTTPS трафик (порт 443)
sudo firewall-cmd --permanent --add-service=https

# Перезагрузить правила брандмауэра
sudo firewall-cmd --reload

Проверка: Подтверждение работоспособности Nginx

После завершения установки и настройки брандмауэра вы можете убедиться, что Nginx правильно отдает контент.

Способ 1: Проверка через веб-браузер

Откройте предпочитаемый веб-браузер и перейдите по IP-адресу или доменному имени вашего сервера:

http://YOUR_SERVER_IP_ADDRESS

При успехе вы должны увидеть стандартную приветственную страницу Nginx, на которой обычно написано: "Welcome to nginx!" (Добро пожаловать в nginx!).

Способ 2: Проверка через командную строку

Используйте команду curl для получения содержимого индексной страницы непосредственно с localhost сервера:

curl http://localhost

Эта команда должна вернуть HTML-исходный код приветственной страницы.

Основные команды управления Nginx

После установки вы будете часто использовать systemctl для управления процессом Nginx. Вот наиболее распространенные команды:

Действие Команда
Запустить сервер sudo systemctl start nginx
Остановить сервер sudo systemctl stop nginx
Перезапустить (Остановить, затем Запустить) sudo systemctl restart nginx
Перезагрузить (Применить изменения конфигурации без простоя) sudo systemctl reload nginx
Проверить статус sudo systemctl status nginx
Отключить автозапуск при загрузке sudo systemctl disable nginx

Совет по лучшей практике: При внесении изменений в файлы конфигурации (например, /etc/nginx/nginx.conf) всегда проверяйте синтаксис перед перезагрузкой. Используйте sudo nginx -t для проверки ошибок. Если проверка прошла успешно, затем используйте sudo systemctl reload nginx для плавного применения изменений.

Куда двигаться дальше: Начальная настройка

Поздравляем, Nginx установлен и работает! Стандартная конфигурация отдает контент из /var/www/html/index.nginx-debian.html (в Debian/Ubuntu) или /usr/share/nginx/html/index.html (в CentOS/RHEL).

Ваши следующие шаги включают создание Блока сервера (часто называемого Виртуальным хостом) для определения расположения фактических файлов вашего веб-сайта и того, как Nginx должен обрабатывать запросы для вашего домена. Файлы конфигурации для этих блоков обычно хранятся в /etc/nginx/sites-available/ и связаны с /etc/nginx/sites-enabled/.

Эта первоначальная установка обеспечивает основу, на которой вы можете строить высокопроизводительные хостинговые среды, решения для балансировки нагрузки и безопасные прокси-конфигурации.