Ответ
Nginx — это высокопроизводительный HTTP-сервер и обратный прокси-сервер с открытым исходным кодом. Он часто используется для балансировки нагрузки, кеширования, обслуживания статических файлов и как прокси для Node.js или других бэкенд-серверов.
Ключевые особенности:
- Асинхронная архитектура (обрабатывает множество соединений с малым потреблением ресурсов)
- Поддержка HTTPS, HTTP/2, WebSocket
- Гибкость конфигурации через
nginx.conf
Пример конфигурации для статики и прокси:
server {
listen 80;
server_name example.com;
location / {
root /var/www/html;
try_files $uri /index.html;
}
location /api/ {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
}
}
Nginx часто используют в связке с Docker, Kubernetes или как фронтенд для Node.js-приложений.
Ответ 18+ 🔞
А, слушай, про Nginx, да? Ну это ж, блядь, такая штука, типа сервер-зверь, только в конфигах живёт. Представь себе здоровенного мужика на входе в клуб, который решает: кого пустить сразу к стойке (это статика), а кого отправить в дальний тёмный уголок к бармену-задроту (это твой Node.js бэкенд). И всё это — без единой потёвшей майки, нахуй! Асинхронно, блядь!
Чем он, сука, так хорош:
- Работает как та самая мартышлюшка на кофеине: тысячу соединений влопал, а ресурсов — как будто и не жрал. Архитектура у него — просто ёперный театр эффективности.
- Всё современное поцреотит: HTTPS, HTTP/2, WebSocket'ы — хуй с горы, всё потянет.
- А конфигурация, блядь... Всё через один файл
nginx.conf. Открыл, поправил — и волнение ебать, как быстро всё завелось.
Вот смотри, как это примерно выглядит, простой пример:
server {
listen 80; # Слушай, порт 80, обычный HTTP
server_name example.com; # За этим именем следи
location / { # Вот сюда, на главную, народ идёт
root /var/www/html; # А мы им — раз! — статику из папки
try_files $uri /index.html; # Не нашёл файл? На, получай index.html, и не ной.
}
location /api/ { # А вот если путь на /api/ начинается...
proxy_pass http://localhost:3000; # Ёбта, это не ко мне! Вали на localhost:3000, к твоему Node.js-приложению.
proxy_set_header Host $host; # И шапку, блядь, не забудь передать, а то там обидятся.
}
}
Его, этого зверя, везде пихают: в Docker'е крутят, в Kubernetes'е ордами запускают, а чаще всего — ставят спереди от твоего Node.js-приложения, чтобы тот не сдох под первым же набегом пидаров с запросами. Короче, вещь, блядь!