Когда я впервые открыл NGINX, меня встретил странный мир конфигурационных файлов и терминала. Казалось, что без суперспособностей в командной строке там делать нечего. Но на практике всё гораздо проще: достаточно знать несколько базовых команд, и сервер будет под контролем.
NGINX — это не просто веб-сервер. Он умеет раздавать статику, балансировать нагрузку и защищать ваш сайт от лишнего трафика. Главное — научиться быстро управлять им через команды, не боясь сломать что-то критичное. В этой статье я расскажу о ключевых командах, которые используют каждый день администраторы, а также покажу простые примеры.
Основные команды NGINX
1. Проверка конфигурации
Перед перезапуском сервера важно убедиться, что конфигурация корректна. Для этого есть команда:
sudo nginx -tПример результата:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Если что-то не так — NGINX укажет на строку с ошибкой, и вы сможете исправить её до того, как сервер сломается.
2. Перезапуск NGINX
После внесения изменений в конфиг необходимо перезапустить сервер, чтобы они вступили в силу. Есть несколько способов:
sudo systemctl restart nginx # полная перезагрузка
sudo systemctl reload nginx # плавная перезагрузка без разрыва соединений
Разница проста: restart останавливает и запускает сервер заново, а reload применяет изменения на лету.
3. Запуск и остановка сервера
Если NGINX ещё не запущен, его можно включить командой:
sudo systemctl start nginx
Для остановки:
sudo systemctl stop nginx
Чтобы проверить статус сервера:
sudo systemctl status nginxВы увидите, работает ли сервер и нет ли ошибок в логах.
4. Просмотр логов
Логи помогают понять, что происходит с сервером:
sudo tail -f /var/log/nginx/access.log # просмотр последних записей доступа
sudo tail -f /var/log/nginx/error.log # просмотр ошибок
Совет: всегда держите один терминал для логов. Это спасает при отладке после внесения изменений.
5. Управление конфигурацией сайтов
NGINX использует так называемые виртуальные хосты, которые хранятся в папках:
/etc/nginx/sites-available/— все доступные конфигурации сайтов/etc/nginx/sites-enabled/— активные сайты (через символьные ссылки наsites-available)
Создание символьной ссылки
Чтобы активировать сайт, нужно создать ссылку из sites-available в sites-enabled:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/Затем проверяем конфигурацию и перезагружаем NGINX:
sudo nginx -t
sudo systemctl reload nginx
Если сайт больше не нужен — удаляем ссылку:
sudo rm /etc/nginx/sites-enabled/example.com
sudo systemctl reload nginxРедактирование конфигурации
Конфигурации сайтов хранятся в текстовых файлах. Открыть и редактировать их можно любым текстовым редактором, например nano или vim:
sudo nano /etc/nginx/sites-available/example.com
Типичный файл может выглядеть так:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
После внесения изменений важно проверить конфигурацию:
sudo nginx -t
Если ошибок нет — применяем изменения:
sudo systemctl reload nginxСовет по редактированию
Всегда делайте резервную копию файла перед изменениями:
sudo cp /etc/nginx/sites-available/example.com /etc/nginx/sites-available/example.com.backup
Изменения вступают в силу только после
reloadилиrestart.Для тестирования лучше использовать тестовый сайт, чтобы не нарушить работу живого сервера.
6. Быстрые команды для повседневного контроля
| Команда | Назначение |
|---|---|
sudo nginx -v | Узнать версию NGINX |
sudo nginx -V | Узнать версию и опции компиляции |
sudo nginx -s stop | Немедленно остановить сервер |
sudo nginx -s quit | Аккуратно остановить сервер после завершения текущих соединений |
sudo nginx -s reload | Перегрузить конфигурацию без остановки соединений |
Теперь, когда вы знаете базовые команды NGINX, управление сервером станет простым и предсказуемым. Главное правило: проверяйте конфигурацию перед перезапуском и всегда смотрите логи.
Мой совет новичкам: создайте свой небольшой тестовый сайт и попробуйте все команды на нём, чтобы почувствовать сервер. Не бойтесь экспериментировать — с NGINX всё относительно безопасно, а навыки командной строки окупятся многократно.

Гость (17 Ноя 2025 06:21)
Годнота всегда надо иметь родрукой