Vue поддомен в разработке и производстве - PullRequest
0 голосов
/ 06 января 2019

У меня следующая (абстрактная) структура проекта:

  • SRC / бренды
  • ЦСИ / админ
  • ЦСИ / дом

Бренды и администратор - это чистый проект, home - это пустой текст. Я пытаюсь заставить проект брэндов и администраторов работать на своем собственном поддомене (соответственно, брендов.website.com и admin.website.com) и размещать на основном домене. Развертывание в рабочей / промежуточной среде происходит через docker (с изображением nginx), и я подумал просто скопировать файл конфигурации nginx из моего проекта в образ docker, чтобы указать файлы в папке dist на правильный файл html (не уверен как же мне нужно сначала исследовать это).

Для разработки я использовал vue.config.js (так как я использую v3 vue cli), и я настроил следующее:

index: {
  entry: 'src/index/main.js',
  filename: 'index.html',
},
brands: {
  entry: 'src/brands/main.js',
  filename: 'brands/index.html',
},
admin: {
  entry: 'src/admin/main.js',
  filename: 'admin/index.html',
},

Я могу связаться с модулем брендов через localhost: 8080 / brands, модуль администратора через localhost: 8080 / admin и домашнюю страницу через localhost: 8080, но проблема в том, что на моей индексной странице у меня будет маршрут, который / бренды, так что, вероятно, перезаписать маршрут модуля брендов со страницей из nuxt (или наоборот). Теперь у меня вопрос, есть ли лучший способ сделать это (например, включить субдомены в vue / localhost), и если нет, то хороший ли способ скопировать конфигурацию nginx в мой образ докера? Или нет?

Заранее спасибо!

1 Ответ

0 голосов
/ 07 января 2019

У меня похожая архитектура проекта. У меня есть один репо с несколькими проектами VUE / NUXT. Каждый из моих проектов является собственным проектом npm / webpack и доступен субдоменом при локальной разработке.

Исходя из вашего примера, я бы настроил проекты.

Измените ваш файл hosts:

127.0.0.1 website.localhost brands.website.localhost admin.website.localhost

Использование localhost в качестве ДВУ было моим личным решением, не стесняйтесь называть домены так, как вам нравится.

Настройка сервера разработки webpack для обслуживания каждого проекта на соответствующем поддомене + порт.

Что приятно в этой конфигурации, так это то, что ваши dev-URL совпадают с вашими рабочими URL. https://brands.website.localhost:8080 -> https://brands.website.com

Каждый проект будет иметь полный контроль над подпутями домена и не будет перекрывать маршруты других проектов, на которые вы ссылались с помощью маршрута /brands.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...