Skip to content
VDS · Сайти та вебсервери

Nginx: встановлення та ваш перший сайт

Як встановити Nginx на Millida VDS, віддати свою першу сторінку за власною адресою і не зламати конфігурацію через одруківку.

Оновлено 23 серпня 2026 р.

Nginx — найпоширеніший вебсервер: він віддає статичні файли й проксіює запити до застосунків. На будь-якому тарифі VPS він займає десятки мегабайтів пам'яті, тож вистачить навіть VDS-1.

Встановлення

Підключіться до машини через SSH (команда є на вкладці «Огляд» у панелі /hosting/vds/m/<id>) і встановіть пакет.

apt update && apt install -y nginx      # Debian, Ubuntu
dnf install -y nginx && systemctl enable --now nginx   # AlmaLinux, CentOS Stream

Перевірте, що служба запущена:

systemctl status nginx
curl -I http://127.0.0.1

Тепер відкрийте в браузері публічну адресу машини — вона показана в «Огляді». Має з'явитися вітальна сторінка Nginx.

Ваш перший сайт

Не редагуйте типовий файл — створюйте окремий конфіг для кожного сайту. Так їх легше вмикати й вимикати.

mkdir -p /var/www/example.ru
echo '<h1>Works</h1>' > /var/www/example.ru/index.html
chown -R www-data:www-data /var/www/example.ru
server {
    listen 80;
    server_name example.ru www.example.ru;
    root /var/www/example.ru;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

Збережіть це у /etc/nginx/sites-available/example.ru (на AlmaLinux — /etc/nginx/conf.d/example.ru.conf) і увімкніть:

ln -s /etc/nginx/sites-available/example.ru /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

nginx -t — обов'язковий крок. Він перевіряє синтаксис перед перезавантаженням; без нього помилка в дужці покладе одразу всі сайти.

Домен і сертифікат

Спрямуйте A-запис домену на адресу машини з «Огляду». Поки запис не пошириться, сайт доступний лише за IP. Зворотний запис (PTR) налаштовується на вкладці «Доступ»; він не впливає на роботу сайту — лише на репутацію пошти.

Далі встановіть безкоштовний сертифікат: Let's Encrypt. Без нього браузери показують «Не захищено».

Типові помилки

СимптомПричинаЩо робити
403 ForbiddenНемає прав на каталог або немає index.htmlchown -R www-data:www-data /var/www/..., перевірте index
502 Bad GatewayЗастосунок за проксі не запущенийsystemctl status вашої служби, див. зворотний проксі
Відкривається інший сайтЗапит не збігся з жодним server_name і потрапив у перший блокЯвно задайте server_name, приберіть default_server із зайвого конфігу
Порт 80 зайнятийУже встановлено ApacheВимкніть його: systemctl disable --now apache2

Перевіряйте логи в /var/log/nginx/error.log — саме там лежить причина майже будь-якої відповіді 500.

Перезапускайте Nginx через systemctl reload, а не restart: reload підхоплює конфігурацію, не розриваючи відкриті з'єднання.