Субдомен Мутли-Тененси - PullRequest
0 голосов
/ 07 ноября 2018

В настоящее время я работаю над созданием мультитенантного приложения с использованием ABP. У меня проблемы с попыткой заставить арендатора субдомена работать, и кажется, что проблема в два раза.

В этом примере сценария мы предполагаем, что приложение размещено локально, и мы используем домен http://lvh.me, чтобы разрешить субдомены без необходимости изменения файла хостов компьютера.

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

  1. Если перейти на страницу хоста, все работает

  2. Если использовать SQLite в качестве поставщика базы данных, и мы пытаемся перейти к http://default.lvh.me, мы можем видеть, что не выбран ни один арендатор. Если я иду в базу данных и обновляю запись, чтобы иметь имя «по умолчанию», а не «по умолчанию», все работает. Это похоже на проблему с SQLite и чувствительностью к регистру, но я не уверен, что лучший подход для решения этой проблемы, поскольку URI по умолчанию не чувствительны к регистру, не должно быть и имя арендатора.

  3. На стороне углового клиента в файле appconfig.json я обновил следующее:

    {
      "remoteServiceBaseUrl": "http://{TENANCY_NAME}.lvh.me:21021",
      "appBaseUrl": "http://{TENANCY_NAME}.lvh.me:4200"
      .....
    }
    

но при доступе к приложению базовый URL-адрес удаленного сервиса {TENANCY_NAME} никогда не заменяется правильной строкой. Я проследил ошибку до вызова при вызове метода getUserConfiguration. Поскольку в этом вызове используется значение AppConsts.remoteServiceBaseUrl, по-прежнему остается заполнитель {TENANCY_NAME}, поэтому вызов не выполняется.

Есть ли способ, при котором мы можем заставить субдомен работать должным образом из коробки, или это ограничение в самой структуре приложения / шаблона?

...