У меня есть приложение на 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/*? А может у меня вообще не правильный подход к этой задаче?