Re: статический контент и NodeJS Express

Cyril Zlachevsky cyril.zlachevsky на gmail.com
Пн Сен 28 17:45:29 UTC 2020


Ответ разработчиков NextJS (у меня SSR-приложение на React, поэтому
сначала спросил у них) на данную проблему - для ее решения используйте
стороннее решение https://github.com/vercel/next.js/discussions/16417

Отсылки к nginx для решения данной проблемы:
https://stackoverflow.com/questions/58115695/how-to-detect-404-errors-from-express-static
https://stackoverflow.com/questions/32419492/proxying-nginx-express-404-on-static-files


пн, 28 сент. 2020 г. в 20:18, Илья Шипицин <chipitsine на gmail.com>:
>
> Лучшим источником информации было бы описание со стороны Express. Вы у них эту рекомендацию нашли? Поделитесь ссылкой?
>
> On Mon, Sep 28, 2020, 10:08 PM Cyril Zlachevsky <cyril.zlachevsky на gmail.com> wrote:
>>
>> Есть приложение на NodeJS, которое прекрасно работает в
>> developer-режиме. В качестве http-сервера используется ExpressJS.
>> В production-режиме появляется проблема - http GET запросы возвращают
>> 404-ю ошибку для всех новых файлов, загруженных после старта приложения
>> в каталог public.
>>
>> Пример: если до старта файл public/static/old.jpg существовал, GET
>> запрос вернет его с кодом 200.
>> Если мы загрузили через nodejs-приложение файл public/static/new.jpg
>> GET-запрос будет возвращать ошибку 404. Если перезапустить приложение,
>> GET на public/static/new.jpg будет возвращать 200.
>>
>> Гугление проблемы привело к пониманию, что это не ошибка, а особенность
>> Express-сервера и для production рекомендуется использовать связку
>> nginx+express. Как мне настроить работу этой связки, я не вполне
>> представляю, поэтому прошу помощи здесь.


Подробная информация о списке рассылки nginx-ru