询问:Azure 容器应用程序无法添加自定义域

问题描述 投票:0回答:1

抱歉,目前我的 azure 帐户中有 ACR 和容器应用程序,当前域来自 azure,现在需要在 cloudflare 后面添加自定义子域,据我测试:

  • 当我尝试使用 A 记录添加并添加到我的 cloudflare 时,验证失败
  • 使用 cname 进行测试时,它可以进行验证,但在添加“无法添加主机名。无法为容器应用程序提供修订版本”时失败。错误详细信息:以下字段无效或丢失。字段“template.revisionsuffix” ' 详细信息无效:'无效值:“updateimage20240906-1”:带有后缀 updateimage20240906-1 的修订版已存在。';.." 对于添加时的上述 cname 错误,是否是因为我需要从 cloudflare 生成自己的证书并添加到我的 azure 容器应用程序中?作为 ATM,我仅使用托管证书进行测试 如果我使用 cname,我无法从我的 cloudflare 帐户启用代理,如果我想让它适用于代理,我应该从我在容器应用程序中测试的内容中设置什么,IP 不会更改(在我停止/修订图像之后)

Cloudflare 背后的容器应用程序配置和上述错误是否有任何最佳实践?

谢谢你

azure-container-apps
1个回答
0
投票

您似乎已经确定了核心问题,即前端中使用的环境变量(特别是

npm
vite
)仍然指向默认的Azure域。

根据您的测试,运行时(在 Azure 内)设置的环境变量似乎不会生效,除非您使用这些变量重建容器映像。我建议在创建容器之前将 API URL (

vite_api
) 设置为指向自定义域。您可以在构建过程中使用
.env
文件或 构建参数 来实现此目的。

对于 Django 设置,在

ALLOWED_HOSTS
中包含 Azure 默认域 (*.azureapps.io) 和自定义域是完全可以的。这允许 Django 接受来自两个域的请求。但是,为了避免 CORS 问题,请确保也使用您的自定义域更新 CSRF_TRUSTED_ORIGINS

一旦您更新了前端中的环境变量以指向自定义域并确保您的 Django 后端正确配置了

ALLOWED_HOSTS
CSRF_TRUSTED_ORIGINS
,您的应用程序应该可以在新的自定义域下顺利运行

© www.soinside.com 2019 - 2024. All rights reserved.