- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用 CloudFront 分发的网站,以 S3 作为源。我编写了一个 Lambda 函数,它接受联系表单提交并将电子邮件与 SES 一起发送。 Lambda 测试结果很好:)
但是,当涉及到将 POST 请求从 CloudFront 路由到后端 Lambda 函数时,我一无所知。我该怎么做?
更新: 好的,我已经完成了触发 Lambda 函数的 API 网关测试,但我似乎无法从 CloudFront 调用它(或者更确切地说,对我的域使用curl 命令)使用 CloudFront 设置)。
我需要在 API Gateway 中将我的域列为自定义域吗?
如果我在 CloudFront 行为中列出路径 /api/*
,我是否必须在 API 网关设置中镜像该路径?那么,在添加特定资源之前,我的 API 网关是否需要以 /api
开头?
更新 2 我认为我需要保留或删除 API 网关 URL 末尾的/dev。开发是我的舞台。
更新 3 好的,现在感觉还差一步。我已经把一切都连接好了。测试请求到达cloudfront,它转发到api网关,网关调用lambda(此时我对我们让这一切变得多么复杂而摇头),lambda将成功或失败发送回api网关,然后我们'重新桃色。不过,当我从curl或浏览器执行此操作时,我会收到MethodNotAllowed。我是否需要向 CloudFront 添加 IAM 角色才能访问 API Gateway?
更新 4 仍然无法正常工作。现在,我又回到了通常的 404 错误页面,即我的默认来源 (S3)。看来无服务器是一个正在褪色的梦想。
更新 5 尝试不同的方法,此处推荐:https://serverfault.com/a/839368这个想法是将 API Gateway 的自定义域名功能与 api.example.com 等子域结合使用,然后使用 Route53 别名记录将子域流量定向到 API Gateway。这可行。然后,CloudFront 将处理 example.com 和 www.example.com 的流量,API Gateway 将获取对 api.example.com 的请求。现在具有挑战性的一点是,在 HTML 表单中,action 属性必须转到不同的子域。让我们看看我们遇到了什么类型的错误和疯狂的行为:(
最佳答案
首先,您将在 Lambda 函数前面设置 API Gateway,以便可以通过 POST 请求调用它。听起来您可能已经完成了那部分?
然后,如果您希望 POST 通过 CloudFront,则需要在 CloudFront 中添加指向您的 API 网关的第二个源。
关于amazon-web-services - 将 POST 请求从 CloudFront 路由到 Lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43419211/
我已经为我们的 Cloudfront 分配设置了一个备用域名,这样我们就可以从 oursite.com 提供服务。我们想禁用 ourdistid.cloudfront.net,这样我们的站点只能从一个
假设一个域名为 www.example.com 的网站托管在网站托管商(而非亚马逊)的 LAMP 服务器上。该域由 Route53 管理。 是否有可能以某种方式保留 LAMP 网络服务器上的所有设置并
我在使Cloudfront具有多个来源的工作时遇到麻烦。 我有两个起源: 起源1 小路: 默认 (*) 起源: Custom-example1.com/p 起源2 小路: ns/ 起源: Custom
TLDR:我们必须通过为来自 Lambda 函数的响应创建新的缓存行为来欺骗 CloudFront 307 重定向缓存。 你不会相信我们离实现这一目标有多近。我们在最后一步卡得太厉害了。 商业案例:
How do you set a default root object for subdirectories for a statically hosted website on Cloudfron
有人知道如何使使用友好 url 的自定义来源的根文档无效吗? 例如:example.com ? 通过 AWS Create Invalidation 对话框请求的正确对象路径是什么? 文档仅引用实际文
我正在使用带有自定义源的 CloudFront,并希望将来自 Web 应用程序的某些请求重定向到 CloudFront(客户端使用直接 URL,不能更改为基于 CloudFront 的 URL)。为了
我正在尝试在 AWS CloudFront 上上传公钥。我按如下方式生成 key ssh-keygen -t ecdsa -b 521 我也试过 ssh-keygen -b 4096 当我通过控制台上
我在 wordpress 重定向中的重定向导致域更改时遇到了一些问题。 例子:网站 - noncdn.somedomain.comCDN 网址 - www.domain.com 当我打开没有尾部斜杠的
在 CloudFront 行为设置中,“全部”是将所有请求 header 转发到源吗? Values That You Specify When You Create or Update a Dist
我们的应用程序中使用的图像是从 Amazon CloudFront 呈现的。 修改现有图像时,它不会立即反射(reflect)图像更改,因为 CloudFront 需要大约 24 小时才能更新。 作为
我想设置亚马逊云端,但是 Assets 需要在 http 和 https 上都可用。 我也想使用多个 cname。例如xyz0.cloudfront.netxyz1.cloudfront.netxyz
路径模式属性的文档并不完全详尽。 The pattern to which this cache behavior applies. For example, you can specify imag
我浏览了文档并进行了大量搜索。这些是我知道我可以使用 CloudFront 创建的签名 url 做的事情: 使用固定策略设置时间限制 监控该项目被查看的次数 我还可以为我的签名 URL 设置命中限制吗
cloudfront 是否支持 TLSv1.3 我没有看到任何文档说它在 cloudfront 和自定义来源之间支持?我强烈要求使用 TLSv1.3 最佳答案 CloudFront 现在支持 TLS
我最近才在阅读 Varnish Cache 的功能,以帮助优化我的 PHP 网站的性能。我读到了一个名为 Edge Side Includes 的功能,它似乎让我可以选择构建可以缓存在组件级别的 ht
我是部署静态站点的新手。搜索了大约一段时间的解决方案,根据我遇到的问题,我没有找到任何有用的信息。 宗旨 :我想在 CloudFront 上运行我生成的 Nuxt.js 静态站点。 问题 : 跑命令n
我正在使用 Amazon CloudFront 传送一些 HDS 文件。我有一个原始服务器,它检查 HTTP HEADER REFERER,如果不允许,它会阻止它。 问题是云前端正在删除引用 head
我正在使用 lambda@edge 通过 cloudfront 重定向我的网站。 我已将版本化 lambda arn 附加到我的云前端缓存行为及其所有 4 个事件。 当我访问我的云端端点时,它会显示
有没有办法让 Amazon CloudFront 失效(通过管理控制台),使所有匹配模式的文件失效?例如图像/*.png 语境 - 我在我的网站上为图像设置了缓存控制,但错误地在 Apache 的缓存
我是一名优秀的程序员,十分优秀!