AWS: обслуживать несколько сайтов в одном домене

YourModel::where(function ($query) use($a,$b) {
    $query->where('a','=',$a)
          ->orWhere('b','=', $b);
})->where(function ($query) use ($c,$d) {
    $query->where('c','=',$c)
          ->orWhere('d','=',$d);
});
1
задан Girafa 16 January 2019 в 15:42
поделиться

3 ответа

Вы можете создать поддомен (a и b) и использовать на своем веб-сайте

  1. my-portal.com
  2. a.my-portal.com
  3. b.my-portal.com

Если вы размещали свой домен за пределами Amazon, вы можете использовать маршрут 53 или адрес fwd в CNAME.

Подробные сведения см. По следующим ссылкам

0
ответ дан vaquar khan 16 January 2019 в 15:42
поделиться

Решение № 1: Используйте CloudFront + Lambda @ Edge

CloudFront позволяет настраивать несколько режимов кэширования, направляя различные шаблоны путей к соответствующим источникам:

  • https://my-portal.com [1133 ] /site/a => https://bucket-a.s3-website.amazonaws.com /site/a
  • https://my-portal.com /site/b => https://bucket-b.s3-website.amazonaws.com /site/b

Единственное ограничение заключается в том, что каждая корзина S3 должна знать путь и обеспечивать в нем одинаковую файловую структуру. Корзина для сайта A должна содержать папку /site/a, корзина B должна содержать папку /site/b.

Это ограничение можно обойти, используя Lambda @ Edge.

Решение №2. Настройка типов MIME для двоичных файлов в API-шлюзе

API-шлюз позволяет настраивать типы MIM-файлов для двоичных файлов. Но для этого требуются запросы совместимости заголовка Accept с настроенными типами mime.

Так, например, если вы конфигурируете image/* как бинарный миметиз в APIG, ваши запросы изображений должны иметь заголовок Accept со значением image/png, image/jpg или просто image/*. Если заголовок отсутствует или имеет другое значение, APIG не будет обрабатывать ответ как двоичный файл.

Проблема в том, что браузеры обычно отправляют Accept: */* при попытке загрузить ресурсы, импортированные из CSS.

Таким образом, единственным решением этой проблемы было бы сконфигурировать */* как бинарный миметип. Это нарушит все недвоичные ответы, обслуживаемые этим шлюзом API, как и JSON.

Решение № 3: Размещать двоичные файлы отдельно

Это комбинация двух предыдущих подходов. Вы можете просто создать отдельный статический хостинг и поместить туда свои двоичные файлы.

0
ответ дан Girafa 16 January 2019 в 15:42
поделиться

Вы можете легко достичь этого, используя AWS CloudFront. Используйте поведения, чтобы выбрать источник на основе пути. CloudFront имеет встроенную интеграцию с S3.

0
ответ дан cementblocks 16 January 2019 в 15:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: