Настройка приложения Node.js с Nginx идеально подходит для запуска приложения узла в производственной среде. Как говорится в Лучшей практике производительности Express, рекомендуется разрешить Nginx обрабатывать кэшированные запросы, сжимать и обслуживать статические файлы. Хорошо известно, что Node.js лучше справляется с тяжелыми операциями ввода-вывода, чем с обработкой статических файлов и сжатием с интенсивным использованием ЦП.

Я предполагаю, что статические файлы находятся в /usr/src/app/public, а Express использует порт 3000.

Удаление деталей из Express

У вас может быть настроено обслуживание статических файлов в Express. Вам это больше не нужно, так как Nginx справится с этим.

Найдите линию, которая выглядит так, и удалите ее.

app.use(express.static('public'))

Также вы могли настроить сжатие gzip. Nginx также лучше справляется с этим. Удалите эту строку.

app.use(compression())

Настроить Nginx

Используйте приведенный ниже файл конфигурации.

Проверьте настройку

Попробуйте запустить curl -I http://yourIpAddressOrDomain или проверьте заголовок на вкладке сети браузера Chrome.
Вы увидите заголовок nginx, если вся конфигурация настроена правильно.

Более

Вы можете установить дополнительные плагины для Nginx. Таким образом, доступно больше вариантов сжатия, таких как brotli. См. Ссылку для чтения официальной документации по настройке nginx brotli.