Nuxt + Elasti c Beanstalk: почему значение заголовка хоста является IP-адресом только на определенных поддоменах? - PullRequest
0 голосов
/ 26 мая 2020

У меня есть приложение Nuxt Universal, развернутое на AWS Elasti c Beanstalk через интерфейс командной строки. Поддомен с подстановочными знаками настраивается через Namecheap, поэтому наши клиенты могут получить доступ к своему сайту по адресу client-name.mycompany.com. У меня также есть SSL, настроенный через ACM, и у меня есть балансировщик нагрузки приложений на моем экземпляре EB.

В моем действии nuxtServerInit я делаю вызов API для URL-адреса, который создается из значения заголовка хоста, например:

async nuxtServerInit ({ commit }, { req }) {
    apiService.init(process.env.ROOT_API);
    const data = await vendorDirectoryAPI.getDirectoryId(req.headers.host);

    // logic

    commit("setDirectoryData", data);
  },

Проблема, с которой я столкнулся заключается в том, что примерно для 10% поддоменов вызов API не выполняется. Просматривая журналы, проблема для отказавших поддоменов заключается в том, что значение req.headers.host является IP-адресом. Для остальных 90% значение соответствует ожидаемому: client-name.mycompany.com.

Что здесь происходит? Есть ли лучший способ получить URL-адрес, который посещает пользователь? Нужно ли мне делать какие-то нестандартные конфигурации nginx? Стоит ли мне попробовать настроить новую среду?

Любые предложения, подсказки и т. Д. c. был бы очень признателен, я относительно новичок в Elasti c Beanstalk (и AWS в целом).

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

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