Google App Engine постоянно возвращает ответ 400 на нестандартный домен

Мой сценарий использования - это приложение Django, работающее в службе app-engine, и я использую облачные задачи для выполнения асинхронной работы в фоновом режиме.

Django создает задачу -> задача отправляет обратно в Django для выполнения долгоиграющей задачи

На этот ответ сервер постоянно отвечает 400. После просмотра журналов выяснилось, что он отправляет обратно относительный url, а хостом является домен, заданный Google по умолчанию, т.е. sample-development-app.uc.r.appspot.com. Когда я перехожу к этому месту в браузере, я также получаю ответ 400.

Однако, у меня есть пользовательский домен, настроенный и работающий на этом приложении, т.е. app.development.sample.com. Когда я перехожу на это место в браузере, я получаю ожидаемую веб-страницу

Я пробовал сопоставить оба адреса с помощью dispatch.yaml к одной и той же службе по умолчанию, но это не изменило результат. Мое рабочее предположение заключается в том, что постбэк задачи сталкивается с той же проблемой, которую я наблюдаю в браузере.

Это мой первый проект на gcp app engine, поэтому я думаю, что мне не хватает чего-то в меню, чтобы позволить ему принимать несколько URL, один из которых по умолчанию поставляется google.

Спасибо, что дочитали до конца.

app.yaml

# [START django_app]
# [START gaestd_py_django_app_yaml]
runtime: python310

env_variables:
  DJANGO_SETTINGS_MODULE: config.settings.gae

handlers:
- url: /static
  static_dir: config/staticfiles/

- url: /.*
  script: auto

dispatch.yaml

dispatch:
- url: "sample-development-app.uc.r.appspot.com/*"
  service: default
- url: "app.development.sample.com/*"
  service: default

Я буду владеть своей проблемой, оказалось, что "ALLOWED_HOSTS" был установлен на URL пользовательского домена. Из логов следовало, что к приложению не было доступа, но на самом деле это была просто глупая ошибка.

Вернуться на верх