Гайд по настройке Nginx как обратного прокси для Node.js приложения

Хочу поделиться своим опытом настройки Nginx для нашего нового проекта на Node.js. Раньше мы использовали что-то попроще, но с ростом нагрузки пришлось задуматься о более надежном решении, и Nginx тут как тут.

  • Установка Nginx: Начните с установки Nginx на вашем VPS. Обычно это делается командой `sudo apt update && sudo apt install nginx`.
  • Конфигурация виртуального хоста: Создайте новый файл конфигурации для вашего приложения, например, `/etc/nginx/sites-available/myapp`. В этом файле пропишите основные директивы.

Вот пример базовой конфигурации:

server {
    listen 80;
    server_name your_domain.com;

    location / {
        proxy_pass http://localhost:3000; 
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Важные моменты:

  • `proxy_pass http://localhost:3000;`: Здесь мы указываем, куда Nginx будет перенаправлять запросы. Если ваше Node.js приложение слушает другой порт, замените 3000 на нужный.
  • SSL/TLS: Для продакшена обязательно настройте SSL-сертификат. Это можно сделать с помощью Let's Encrypt.
  • Кэширование: Nginx отлично справляется с кэшированием статического контента, что снизит нагрузку на ваше приложение.

Мониторинг: Не забывайте следить за логами Nginx (`/var/log/nginx/access.log` и `error.log`) и процессом вашего Node.js приложения. Можно использовать системы мониторинга типа Zabbix или Prometheus.

Этот подход помог нам не только повысить стабильность, но и увеличить скорость ответа нашего сервиса. Надеюсь, кому-то пригодится!

кракен магазин нарков

Подробнее