Nuxt динамический маршрут возвращается 404 после перезагрузки страницы - PullRequest
0 голосов
/ 26 февраля 2019

Привет всем, я работаю над проектом, который использует nuxt js, и я только новичок в этой среде.Я настроил его на использование режима spa , к сожалению, я ничего не изменил и не добавил в свою конфигурацию nuxt, просто по умолчанию.И ниже, как я настроил мои страницы.

pages / users / index.vue - показывает список или пользователей

pages / users / _id.vue - показать конкретного пользователя

Я развернул свой проект с помощью команд npm run build и npm run start .Затем каталог dist размещается на сервере nginx.

Проблема заключается в том, что при переходе к / user / id с использованием пустой ссылки страница отображается правильно, но когда я получаю доступ к страницеURL или обновить страницу, я получаю nginx 404 страница не найдена.

Я читал о генерации nuxt для генерации предварительно отрендеренных страниц, но хорошо ли это использовать при работе с сотнями записей?

Любая помощь, совет, будет очень ценным.

Спасибо

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

В самом начале вы должны понимать, какие проблемы помогают решить nuxt.

вы можете создавать три типа приложений:

  1. статическая страница

На основе маршрутизации nuxt генерирует HTML-файлы, которые являются SEO-дружественными.Это работает, например, для страниц визитных карточек (главная страница + несколько подстраниц).Вы получаете готовые HTML-файлы, например, index.html, contact.html и т. Д.

SPA

приложения, которые не требуют SEO, но имеют динамические пути и интерфейс.Не использует рендеринг на стороне сервера.Некоторые методы недоступны, но все же используют некоторые из преимуществ nuxt.Например, динамическая маршрутизация или множество параметров, доступных в конфигурации в nuxt.

Универсальный

позволяет вам пользоваться всеми преимуществами nuxt.js.С помощью специальных методов веб-сайта (fetch, asyncData, nuxtServerInit и т. Д.) Он позволяет подготовить данные на стороне сервера для их генерации на стороне браузера, чтобы они были оптимизированы для SEO.

Поэтомуесли вам нужно использовать динамическую маршрутизацию, вы должны выбрать между SPA и универсальным режимом.Проверьте, какие команды вы должны USE

0 голосов
/ 26 февраля 2019

Вы совершенно смешанные вещи.Во-первых, режим по умолчанию - универсальный, он же сср, а не спа. Документы

Во-вторых, для универсального режима необходим запуск npm, в то время как в режиме spa вы просто помещаете один html-файл и направляете ВСЕ reuqest из nginx в этот файл.

Но если вы используете npm run start, это универсальное приложение, и вы не размещаете простой html через nginx, вы должны настроить нисходящий источник для nginx и направить весь запрос на сервер узла, например, по умолчанию localhost: 3000

...