有没有办法更新存储在 Amazon CloudFront(亚马逊的 CDN 服务)上的文件?似乎不需要对我们制作的文件进行任何更新(例如删除文件并使用与之前相同的文件名存储新文件)。我是否必须显式触发更新过程以从边缘服务器中删除文件才能发布新文件内容?

感谢您的帮助

有帮助吗?

解决方案

亚马逊加入失效特征。 这是API参考

从API对照品请求:

POST /2010-08-01/distribution/[distribution ID]/invalidation HTTP/1.0
Host: cloudfront.amazonaws.com
Authorization: [AWS authentication string]
Content-Type: text/xml

<InvalidationBatch>
   <Path>/image1.jpg</Path>
   <Path>/image2.jpg</Path>
   <Path>/videos/movie.flv</Path>
   <CallerReference>my-batch</CallerReference>
</InvalidationBatch>

其他提示

以下是我使用 CloudFront 控制面板执行此操作的方法。

  1. 从服务列表中选择 CloudFront。
  2. 确保 发行版 从左上角开始被选择。
  3. 接下来,单击列表中关联分配的链接(在 id 下)。

enter image description here

  1. 选择 无效宣告 标签。
  2. 点击 创建失效 按钮并输入您想要失效(更新)的文件的位置。

例如:

enter image description here

  1. 然后单击 无效 按钮,你现在应该看到 进行中 状态下。

enter image description here

通常需要10到15分钟才能完成您的无效请求,具体取决于您的请求的大小。

一旦它说完成,你就可以开始了。

提示:一旦您创建了一些失效,如果您回来并需要使相同的文件失效,请使用选择框和 复制 链接将变得可用,使其速度更快。

下载云莓浏览器免费版本要做到这一点对单个文件: http://blog.cloudberrylab.com/2010/08 /how-to-manage-cloudfront-object.html

适用于 Mac 和 Windows 的 Cyber​​duck 提供了用于对象失效的用户界面。参考 http://trac.cyberduck.ch/wiki/help/en/howto/cloudfront.

我似乎记得上serverfault看到这个了,但这里的答案:

通过 “亚马逊CDN” 我想你的意思是 “CloudFront的”?

它的缓存,所以如果你需要它,现在被更新(而不是“新版本将在24小时可见”),你必须选择一个新的名字。相反,为“Logo.png”的使用为“Logo.png - 0”,然后使用为“Logo.png - 1”进行更新,并改变你的HTML为指向

有没有办法 “冲洗” 亚马逊CloudFront的。

修改:此的不可能,现在是。见注释此回复。

CloudFront 的用户界面在 [i] 按钮 >“分发设置”的“失效”选项卡下提供此功能: https://console.aws.amazon.com/cloudfront/home#distribution-settings

在红宝石,使用雾宝石

AWS_ACCESS_KEY = ENV['AWS_ACCESS_KEY_ID']
AWS_SECRET_KEY = ENV['AWS_SECRET_ACCESS_KEY']
AWS_DISTRIBUTION_ID = ENV['AWS_DISTRIBUTION_ID']

conn = Fog::CDN.new(
    :provider => 'AWS',
    :aws_access_key_id => AWS_ACCESS_KEY,
    :aws_secret_access_key => AWS_SECRET_KEY
)

images = ['/path/to/image1.jpg', '/path/to/another/image2.jpg']

conn.post_invalidation AWS_DISTRIBUTION_ID, images

甚至失效,它仍然需要5-10分钟为无效来处理,并刷新在所有亚马逊边缘服务器

适用于 Win、Mac 和 Linux 的 CrossFTP 提供了用于 CloudFront 失效的用户界面,请查看以下内容以了解更多详细信息: http://crossftp.blogspot.com/2013/07/cloudfront-invalidation-with-crossftp.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top