Вы не можете разделить приложение 1 Next. js между поддоменами по нескольким причинам. Исходя из опыта, у меня было похожее требование (3 области), которое я начал с одного приложения, разбитого на 3 (используя подпути)
- Активы (css, js libs) просачиваются между "областями" ".
- одно большое приложение с 3 областями означает, что каждое изменение потребует повторного развертывания всех областей (одна большая развертываемая)
- Время сборки для создания 3 областей будет намного больше
- Каждая область может вводить различные требования, такие как компоненты пользовательского интерфейса для администратора, но пользовательские компоненты пользовательского интерфейса для «передней» области, аутентификация, переводы и многое другое
Завершено тремя отдельными Далее. js приложения, которые управляются внутри рабочих областей пряжи и развертываются в указанной области c.
После того, как я объяснил свой опыт, вы можете выполнить настройку с обратным прокси-сервером, таким как nginx для сопоставления субдомена и подпути в вашем следующем приложении.
Допустим, у вас есть 3 области: front, admin, users.
www.domain.com/some-page
=> быть сопоставленным с localhost:3000/front/some-page
. users.domain.com/some-page
=> должно быть сопоставлено с localhost:3000/users/some-page
. admin.domain.com/some-page
=> должно быть сопоставлено с localhost:3000/admin/some-page
.
// www.domain.com.conf
server {
listen 80;
server_name www.domain.com;
access_log /var/log/nginx/access.log main;
root html;
location / {
proxy_pass http://127.0.0.1:3000/front/; // <-- the last slash is important
}
}
users.domain.com.conf
server {
listen 80;
server_name users.domain.com;
access_log /var/log/nginx/access.log main;
root html;
location / {
proxy_pass http://127.0.0.1:3000/users/; // <-- the last slash is important
}
}
Обратите внимание 1. вам нужно будет переписать stati c активы, а также.