Как правильно использовать роутинг в Next.js с поддоменами, с проксированием?

У меня есть приложение на next.js.

Структура страница такая:
pages/
  |-- index.js
  |-- about.js
  |-- admin/
     |-- index.js
     |-- stats.js


Используется 2 поддомена: example.com и admin.example.com

В качестве сервера используем apache с проксированием запросов
Запустили JS приложение (next start), которое работает на 3000 порту

В конфиг апача добавили настройки:
1) Если мы стучимся с основного домена, то запросы идут на localhost:3000/*
2) Если мы стучимся с поддомена (admin.example.com), то запросы идут на localhost:3000/admin/*

Суть проблемы в следующем.
Когда я гуляю по страницам основного домена (example.com -> example.com/about), то сайт работает как SPA, страница не обновляется, а просто рисуется из JS файлов.
А когда я гуляю на поддомене, то при каждом клике (admin.example.com -> admin.example.com/stats) переходе происходит обновление страницы.

Из ошибок в JS я понял что дело в роутинге и в проксировании запросов.
Я на клиенте перехожу admin.example.com -> admin.example.com/stats. JS ищет файл /pages/stats.js - его нет. Происходит обновление страницы и благодаря проксированию при первой загрузке идет поиск файла /pages/admin/stats.js и все отображается правильно.

Как можно сделать нормальную работу в данном случае? Может быть как-то в _app.js файле указать - если ты сидишь на поддомене, то искать страницы в папке /pages/admin/*? А может у меня вообще не правильный подход к этой задаче?
  • Вопрос задан
  • 176 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы