nginx (произносится "engine-x") — веб-сервер, который принимает запросы от клиентов
и отдаёт им ответы: HTML-страницы, файлы, данные API.
Один из самых популярных веб-серверов в мире — используется на большинстве
крупных сайтов и сервисов.
Отдавать сайты (Static)
Хранит HTML, CSS, картинки и отдаёт их браузеру по запросу.
Самый базовый сценарий использования.
Браузер → nginx → HTML-страница
Обрабатывать HTTP-запросы
Принимает запросы на порту 80 (HTTP) и 443 (HTTPS).
Решает, что вернуть клиенту — файл, ошибку или перенаправление.
Reverse Proxy
nginx принимает запрос и перенаправляет его на другой сервер или приложение.
Клиент общается только с nginx — не зная, что за ним стоит.
Клиент → nginx → приложение (Python, Node.js, PHP)
Используется, чтобы скрыть внутреннюю инфраструктуру и добавить контроль над трафиком.
Балансировка нагрузки
Распределяет запросы между несколькими серверами.
Если один сервер перегружен — nginx направит запрос на другой.
apt update
apt install nginx
Проверить, что запущен:
systemctl status nginx
После установки nginx сразу отвечает на порту 80.
Открыть в браузере http://IP_сервера — появится стандартная страница nginx.
/etc/nginx/nginx.conf — главный конфиг
/etc/nginx/sites-available/ — конфиги сайтов
/var/www/html/ — папка с файлами сайта
/var/log/nginx/access.log — логи запросов
/var/log/nginx/error.log — логи ошибок
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
listen 80 — принимать запросы на порту 80server_name — доменное имя сайтаroot — папка с файлами сайтаtry_files — искать файл, иначе вернуть 404nginx — быстрый и лёгкий веб-сервер.
Отдаёт сайты, проксирует запросы и балансирует нагрузку.
Устанавливается одной командой и сразу готов к работе.