码迷,mamicode.com
首页 > 其他好文 > 详细

Azure Blob存储更改缓存时间

时间:2017-02-08 18:19:51      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:nbsp   rom   解决   load   tor   blog   round   com   代码   

Azure的Blob存储可以作为Http的服务来使用。很多客户已经把Blob作为图片存储的服务,这样稍作代码的修改,解决了图片服务器带宽、性能等多种问题。

但同时问题也出现了:在传统Http的服务中很多meta属性是可以设置的,但在blob中如何设置。

比如,在Apache中,可以设置静态内容的缓存时间:

技术分享

如果想把max-age的时间更改的更长,在Apache中,可以修改配置文件/etc/httpd/conf/httpd.conf

#LoadModule headers_module modules/mod_headers.so

去掉注释,添加:

header set cache-control "max-age=36000"

再访问缓存就设置成36000了。

但如果图片是存储在Azure的blob存储上,这些属性如何修改呢?

首先用Blob Explorer打开Storage Account。Blob Explorer在下面的链接下载:

https://azurestorageexplorer.codeplex.com/

在输入相应的存储账户的信息后,可以看到存储中的内容:

技术分享

用View打开其中一个文件,查看其属性:

技术分享

可以看到Cache Control的属性,并且是可以更改的。更改这个属性为public, max-age=2400,点击Update Properties。

技术分享

通过Chrome打开这个图片,再通过F12查看,已经更改过来了:

技术分享

如果有大量的图片信息需要更改,可以通过PowerShell脚本的方式进行更改:

 

$sa = Get-AzureRmStorageAccount -ResourceGroupName hwblob -Name hwblob
$blobs = $sa | Get-AzureStorageBlob -Container test
foreach($blob in $blobs){ write-host $blob.ICloudBlob.Properties.CacheControl $blob.ICloudBlob.Properties.CacheControl = "public, max-age=2400" $blob.ICloudBlob.SetProperties() write-host $blob.ICloudBlob.Properties.CacheControl }

 

 

Azure Blob存储更改缓存时间

标签:nbsp   rom   解决   load   tor   blog   round   com   代码   

原文地址:http://www.cnblogs.com/hengwei/p/6379257.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!