我已经设置了一个包含下载和流分发的cloudfront实例.我用签名的网址将它们设置为私有.我能够获得示例代码,用于下载分发带有签名网址的图像.我现在正试图通过签名的URL为JW Player提供流式传输,但我遇到了问题.
这里是我签的URL格式:RTMP://s1iq2cbtodqqky.cloudfront.net/2012-08-31_13-24-01_534.mp4过期= 1359648770&签名= Oi8RwL4Nf338NldW2uIsqFIv3zHnJkxXYbXIiVQh〜J0Iq4kb00Ly5MLTgJw〜87KmlUOmilmdRHy7p〜UxeGYQxgkewPI11r27se0b〜hTvpxq9y9Z5C-B-A58ZnngaCi9G2SHAujMzvss7ynLLEqUV3M6MVZl1qCxyfJbLdxCIEMY_和密钥对-ID =
这是我的JW Player代码:
<script type="text/javascript" src="jwplayer/jwplayer.js"></script>
<div id="container">Loading the player ...</div>
<script type="text/javascript">
jwplayer("container").setup({
'flashplayer': 'jwplayer/jwplayer.flash.swf',
'file': '<?= $canned_policy_stream_name ?>',
'width': '480','height': '270',
'provider': 'rtmp',
'streamer': 'rtmp://s1iq2cbtodqqky.cloudfront.net/cfx/st/'
});
</script>
Run Code Online (Sandbox Code Playgroud)
谁知道这里有什么问题?我该如何单独测试网址?现在很难判断问题是JL Player集成的url还是代码.
-J
我们正在使用 cloudfront 来提供 s3 资源并且它受到限制。在 c# 中,在使用“AmazonCloudFrontUrlSigner.SignUrlCanned”创建预签名 url 时,它只要求使用根凭证生成的 cloudfront 私钥,而不要求 IAM 用户凭证。
在分发行为中,我可以看到有一个选项可以指定“受信任的签名者”,但无法理解它的使用位置。任何有关这方面的信息都会很棒。还有一种方法可以使用 IAM 用户凭证生成预先签名的 Cloudfront url 吗?
Cloudfront 有一个很好的特性,它允许不同的路径到达不同的来源。我们使用它来支持从 S3 和 AJAX 提供给多个服务的纯客户端单页应用程序,简化的示例设置为:
mydistribution.cloudfront.net/path1 --> 负载均衡器 A 服务 A
mydistribution.cloudfront.net/path2 --> 负载均衡器 B 服务于服务 B
mydistribution.cloudfront.net/frontend ---> 托管单页应用程序 JS/CSS/HTML 的 S3 存储桶,该应用程序对服务进行 AJAX 调用
我正在寻找一种方法来设置本地环境来模仿这部分行为,以便同一 url/端口上的不同本地路径可以解析为不同端口上的不同本地运行服务。重要的是,CORS 和其他跨域问题不会影响本地开发,因为所有事情都发生在同一个域/端口上,因此在非本地设置中不存在这些问题。这是如何最好地实现的?
例如(右侧的所有内容都已设置并在正确的端口上运行)
localhost:8080/path1 --> 运行 8091 的本地 Web 应用程序服务器
localhost:8080/path2 --> 端口 8090 上的本地 Web 应用程序服务器
localhost:8080/frontend --> 端口 8081 上的本地节点服务器,为 HTML/JS/CSS 提供服务
为 S3 内容启用 Amazon S3 和 CloudFront(实际上服务于静态网站)。对存储桶的任何更新随机需要 15 分钟到 1 天。我可以如何使用设置来加快速度?
我有一个使用 S3 的静态 SPA 页面,因为它是 CloudFront 的源头。如果我访问 www.domain.com/page,我将获得bucket-directory/prod/page/预期的 CloudFront 路径前缀。
是否可以在 AWS Lambda 中捕获路径并将尾部斜杠附加到请求中,因此它变为 www.domain.com/page > [Lambda] > www.domain.com/page/
我一直在寻找并尝试以下资源,但收效甚微:http : //blog.rowanudell.com/redirects-in-serverless/
所以我有一个由 AWS Cloudfront 从 AWS S3 提供的 SPA。我已经配置了以下错误页面行为:
404: Not Found->/index.html带有 HTTP 代码200
这是在客户端处理路由所必需的。
现在我有一个 Lambda@Edge 函数,它由viewer-responseCloudfront 中的事件触发并设置一些自定义标头,如 HSTS 和 X-Frame。该函数正在被调用并按预期在除实际/index.html. 我倾向于认为这是因为它由 Cloudfront 中的上述错误页面行为处理,因为对 html 的实际 GET 请求由 Cloudfront 中的错误页面配置处理。
解决这个问题的实用方法是什么?
我不确定为什么重定向不会触发 lambda 函数。有什么方法可以实现与 lambda@edge 中的错误页面配置相同的逻辑吗?
在遵循了本教程之后,我最近在AWS上部署了一个React应用,一切正常,除非我想集成最近使用AWS Route 53购买的自定义域,但出现错误(403)。
为了将Route 53与CloudFront集成,我按原样执行了文档中的这些步骤,我知道我的问题与某种权限授权有关,但是我不知道我在哪里做错了什么。
amazon-s3 amazon-web-services amazon-cloudfront amazon-route53
在Api Gateway中,我创建了一个自定义域foo.example.com,用它创建了一个Cloud Front发行版CNAME.
我还想创建一个通配符域,*.example.com但在尝试创建它时,CloudFront会抛出一个错误:
CNAMEAlreadyExistsException:您提供的一个或多个CNAME已与不同的资源相关联
AWS在其文档中指出:
但是,您可以添加通配符备用域名,例如*.example.com,其中包含(与其重叠)非通配符备用域名,例如www.example.com.只要两个分发都是使用相同的AWS账户创建的,重叠域名可以位于同一分布中,也可以位于不同的分布中.
所以我可能误解了这一点,是否有可能完成我所描述的内容?
我有一个指向不同域的静态 S3 网站: https://www.externaldomain.com/id12345
此 S3 分配给 CloudFront,然后将其分配给 A 记录以 mydomain.com
结果是,当我导航到mydomain.com它时,它会将访问者重定向到https://www.externaldomain.com/id12345
一切工作正常,除了它重定向到https://www.externaldomain.com/id12345/与/末
我怎样才能让它在https://www.externaldomain.com/id12345没有/ 的情况下完全重定向到
我无法控制externaldomain.com它,当包含/时它会给出 404 。
我有一种情况,我无法轻松理解原因,也找不到任何文档。
我做了以下工作:
创建了一个 S3 存储桶
允许公众访问它
为静态网站托管启用它
为它创建了一个 CloudFront 分配
在云端启用 HTTPS
现在我试图将 S3 存储桶的访问权限限制在 CloudFront。
我尝试了在
不幸的是,当我尝试编辑原点时,我没有看到 UI 中的所有选项,尤其是缺少限制存储桶访问。
我只看到编辑源域名、源路径、源 ID(灰色)、源自定义标头的选项 - 没有输入 OAI 或设置限制存储桶访问等的选项。
是因为启用了HTTPS吗?
S3高手请帮忙!