我有一个烧瓶应用程序通过 zappa 部署到 AWS Lambda。Zappa 创建了一个 AWS 休息端点,例如random_api_ID.execute-api.us-east-2.amazonaws.com/dev
直接输入浏览器时可以完美运行。但是,当我使用 Cloudfront 将此端点关联到我的自定义域时dev.mywebsite.com
,我在对存储在子文件夹中的任何资产的响应中收到 404 错误。原因是因为 Cloudfront 正在提供诸如
dev.mywebsite.com/dev/static/css/style.css
代替
dev.mywebsite.com/static/css/style.css
此外,这有效: random_api_ID.execute-api.us-east-2.amazonaws.com/dev/static/css/style.css
但这不会: random_api_ID.execute-api.us-east-2.amazonaws.com/static/css/style.css
所以,不知何故,我需要 Cloudfront 来关联random_api_ID.execute-api.us-east-2.amazonaws.com/dev
而dev.mywebsite.com
不是dev.mywebsite.com/dev
.
我的 Cloudfront 发行版具有以下参数:
Alternate Domain Name: dev.mywebsite.com
Origin Domain: random_api_ID.execute-api.us-east-2.amazonaws.com
Origin Path: dev <-- this is the stage name
我尝试通过 AWS API Gateway 将自定义域映射到 zappa 生成的 AWS 休息端点;但是,该解决方案会生成一个我无法控制的私有 Cloudfront 域;我更喜欢涉及配置 Cloudfront 的解决方案。
提前致谢!