Встановлення та налаштування Nginx на сервері

9 хв читанняОновлено 25 вересня 2026

Nginx — це вебсервер з широкими можливостями, створений із використанням сучасних технологій. Ним користуються найбільші компанії, такі як Google, Facebook та інші.

Перед встановленням переконайтеся, що у вас не встановлено Apache2.

#Встановлення вебсервера

Встановлення дуже просте, скористайтеся такою командою:

bash
apt-get install nginx -y

#Налаштування Nginx

Вам потрібно перейти до каталогу /etc/nginx/sites-available і створити файл з назвою "site.conf".

Вставте та відредагуйте таку конфігурацію:

nginx
server { listen *:80; server_name spacecore.pro; # домен сайту client_max_body_size 1000M; # максимальний розмір файла, що завантажується через сайт error_page 404 = @notfound; location / { root /home/site/spacecore; # шлях до сайту try_files $uri $uri.html $uri/ @extensionless-php; index index.html index.php; } # Налаштування PHP; якщо воно не потрібне, видаліть рядки з 13 по 21 location ~ \.(php|html|htm)$ { try_files $uri =404; root /home/site/spacecore; # шлях до сайту fastcgi_pass unix:/run/php/php7.0-fpm.sock; # шлях до PHP fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; } }

Перезапускаємо Nginx:

bash
service nginx restart

#Примітки щодо PHP

PHP не є обовʼязковим для роботи Nginx. Ця примітка актуальна лише в тому разі, якщо ваш сайт використовує PHP.

Додаткову інформацію можна знайти у статті «Встановлення та налаштування PHP».

#Підключення SSL-сертифіката до Nginx

Використання SSL не є обовʼязковим; його можна налаштувати, якщо у вас є сертифікат і ви хочете його використовувати.

Потрібно створити або змінити конфігурацію сайту так, щоб вона виглядала так:

nginx
server { listen 80; server_name spacecore.pro; # домен сайту return 301 https://$server_name$request_uri; # редирект з http на https } server { listen 443 ssl http2; server_name spacecore.pro; # домен сайту root /var/www/spacecore; # шлях до сайту index index.html index.htm index.php; # індексні сторінки access_log /var/log/nginx/spacecore.app-access.log; # журнал успішних підключень error_log /var/log/nginx/spacecore.app-error.log error; # журнал помилок # якщо потрібно щось вимкнути, замість шляху до файла вкажіть "off" client_max_body_size 1000m; # максимальний розмір файла, що завантажується через сайт client_body_timeout 120s; # тайм-аут отримання тіла запиту sendfile off; # після увімкнення Nginx надсилатиме заголовки HTTP-відповідей одним пакетом, а не окремими частинами # Налаштування SSL ssl_certificate /etc/letsencrypt/live/spacecore.pro/fullchain.pem; # публічний ключ сертифіката ssl_certificate_key /etc/letsencrypt/live/spacecore.pro/privkey.pem; # приватний ключ сертифіката ssl_session_cache shared:SSL:10m; # розмір кешу SSL-сесій ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384"; ssl_prefer_server_ciphers on; # зменшує час завантаження сторінок location ~ \.(php|html|htm)$ { try_files $uri =404; root /var/www/spacecore; # шлях до сайту fastcgi_pass unix:/run/php/php7.2-fpm.sock; # шлях до PHP fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; } }

Перезапускаємо Nginx:

bash
service nginx restart

#Перевірка на Apache2

Якщо встановити Nginx разом з Apache2, вони конфліктуватимуть за порт 80, тому один із вебсерверів потрібно видалити. Перевірте, чи встановлено Apache2:

bash
service apache2 status

Якщо велике службове повідомлення зі статусом не зʼявилося, отже Apache2 не встановлено.

Якщо Apache2 встановлено, видаліть його:

bash
apt-get remove --purge apache2* -y

#Видалення Nginx

Щоб повністю видалити Nginx із сервера, спочатку зупиніть службу:

bash
service nginx stop

Потім виконайте таку команду, щоб безповоротно його видалити:

bash
apt-get remove --purge nginx*

Не знайшли відповідь? Ми на звязку 24/7.Написати в підтримку