Сопоставить настраиваемый поддомен с определенной версией в App Engine
На этой странице ( https://cloud.google.com/appengine/docs/standard/nodejs/mapping-custom-domains) говорится:
Использование поддоменов
Если вы настроили сопоставление поддомена с подстановочными знаками для своего пользовательского домена, то ваше приложение будет обслуживать запросы на любой соответствующий поддомен.
- Если пользователь просматривает домен, который соответствует имени версии приложения или имени службы, приложение обслуживает эту версию.
- Если пользователь просматривает домен, который соответствует имени службы, приложение обслуживает эту службу.
Кроме того, на этой странице ( https://cloud.google.com/appengine/docs/standard/java/how-requests-are-routed) говорится:
Отправляет запрос доступному экземпляру определенной версии в
default
оказание услуг:
https://[VERSION_ID]-dot-[MY_PROJECT_ID].appspot.com
http://[VERSION_ID].[MY_CUSTOM_DOMAIN]
У меня есть следующие сервисы для моего проекта App Engine:
и следующие версии для этого сервиса:
"1"
версия по умолчанию. "test1"
это тестовая версия.
Тем не менее, когда я ввожу https://test1.mycustomdomain.com/ в браузер, он обслуживает версию по умолчанию, а не "test1"
версия.
Если я ввожу https://test99.mycustomdomain.com/ в браузер, я вижу страницу с ошибкой, потому что эта версия не существует (как и ожидалось).
URL https://test1-dot-my_project_id.appspot.com/ работает, как и ожидалось (т.е. обслуживает "test1"
версия).
Это мои настроенные домены:
Как заставить App Engine перенаправить запрос на правильную версию?
1 ответ
Любой домен, напрямую связанный с вашим приложением, будет обслуживать службу по умолчанию. Если test1.mycustomdomain.com
отображается как пользовательский домен, он всегда будет служить 1
(дефолт).
Чтобы обслуживать именованные версии GAE с настраиваемым доменом, необходимо сопоставить домен с подстановочным знаком (*.mycustomdomain.com
) и удалите другие сопоставленные субдомены, которые конфликтуют с вашими версиями. Примером работающих сопоставленных доменов будет:
mycustomdomain.com
www.mycustomdomain.com
*.mycustomdomain.com
С этой настройкой test1.mycustomdomain.com
должен служить правильной версии, test1
,
редактировать
Относительно группового сопоставления и HTTPS
Документация GCP о сопоставлении по шаблону гласит, что:
Примечание: сопоставления с подстановочными знаками не поддерживаются для управляемых сертификатов SSL.
Это может привести к убеждению, что подстановочное сопоставление не поддерживает HTTPS. Документация ссылается на управляемые сертификаты, которые предоставляет GAE. App Engine поддерживает SSL-сертификаты для подстановочных знаков, если вы используете свои собственные SSL-сертификаты:
Некоторые функции App Engine используют специальные субдомены. Например, приложение может использовать субдомены для адресации сервисов приложения или для адресации различных версий вашего приложения. Чтобы использовать их с SSL, имеет смысл настроить SAN или подстановочный сертификат. Подстановочные сертификаты поддерживают только один уровень поддоменов.