#node.js #express #routes
#node.js #экспресс #маршруты
Вопрос:
Во-первых, я хотел бы поблагодарить вас и всех, кто является частью этого сообщества, после многих лет скитаний я, наконец, задал свой первый вопрос, надеюсь, скоро я тоже смогу дать ответы!
Итак, подводя итог проблеме, я получаю 404 на своих маршрутах (кроме домашней страницы), конфигурация-приложение ubuntu20/nginx/nodejs/express, размещенное на VPS Hostinger, я пытался связаться с их поддержкой, но они ничего не знают и направили меня сюда, не такая уж плохая идея, как я думал!
Что здесь странного:
- Это работало отлично (лол)
- На локальном хосте работает
- Полагая, что это было одно из недавних обновлений, после некоторого времени отладки я подумал: «К черту все это, просто откатитесь к последней резервной копии», которая работала отлично!
Однако, к моему удивлению, рабочая резервная копия больше не работает, я на 100% уверен, что она работала, так как я продолжал работать в течение нескольких дней, что не могло быть сделано без рабочих маршрутов.
Журнал ошибок nginx пуст, в журнале доступа отображается [05/Дек/2021:17:02:30 0000] «СООБЩЕНИЕ /api/поиск HTTP/1.1» 404 194 «https://domain.io/» — это правильный маршрут.
Я уже набираю больше, чем большинство вопросов здесь, пожалуйста, направьте меня, и я предоставлю все возможное.
Также я слышал, что express «мертв», должен ли я просто переключиться на что-то другое в надежде, что это «решит» эту проблему?
Спасибо!
Обновления:
- попробовал sudo apt-получить обновление, удалил node_modules, переустановил все
- попытался переименовать маршрут домашней страницы из app.get(«/» в app.get(«/home») и попытался получить доступ domain.io/home и это не сработало! На локальном хостинге это работает нормально
- перезагрузите сервер, перезагрузите все, как я уже сказал, даже восстановленную рабочую резервную копию, эта проблема вне меня…
Обновление 2:
- Я попробовал другой файл, установил Fastify и попробовал конфигурацию по умолчанию
// Требуется фреймворк и создать его экземпляр const fastify = требуется(‘fastify’)({ регистратор: true })
// Declare a route fastify.get(‘/’, async (request, reply) =gt; { return { hello: ‘world’ } })// Declare a route fastify.get(‘/test’, async (request, reply) =gt; { return { hello: ‘test’ } })
// Run the server! const start = async () =gt; { try { await fastify.listen(3000) } catch (err) { fastify.log.error(err) process.exit(1) } } start() The homepage route works, but /test doesn’t (even though it works on local) I’m 99.99% sure this is a hosting issue, what do you think?
UPDATE 3: FINALLY GOT IT, someone please explain how this is possible, inside my nginx config, this line was causing it, after removing everything works.
try_files $uri $uri/ =404;
Может ли кто-нибудь, пожалуйста, объяснить мне, как мой сервер нормально работал в течение недели с этой «ошибкой» внутри конфигурации? Имейте в виду, что я перезапускал nginx десятки раз, эта «линия» работала! Извините за вентиляцию, но как это возможно?