Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Azure CDN和CentOS vm提供压缩文件_Azure_Azure Storage Blobs_Azure Cdn - Fatal编程技术网

使用Azure CDN和CentOS vm提供压缩文件

使用Azure CDN和CentOS vm提供压缩文件,azure,azure-storage-blobs,azure-cdn,Azure,Azure Storage Blobs,Azure Cdn,我有一个CentOS虚拟机在Azure上运行。我在虚拟机上有几个WordPress站点,我正在使用Azure CDN。有没有办法配置CDN以提供压缩内容?此外,我正在使用W3 Total Cache。据我所知,在将文件提供给客户端之前,无法配置CDN来压缩文件。但是,当您将文件上载到blob存储时,您当然可以压缩文件,因此CDN将为已经压缩的文件提供服务。不管怎样,我就是这么做的。下面是一段C代码,演示了在将文件上载到Azure blob存储之前如何压缩文件: var blobData = ne

我有一个CentOS虚拟机在Azure上运行。我在虚拟机上有几个WordPress站点,我正在使用Azure CDN。有没有办法配置CDN以提供压缩内容?此外,我正在使用W3 Total Cache。

据我所知,在将文件提供给客户端之前,无法配置CDN来压缩文件。但是,当您将文件上载到blob存储时,您当然可以压缩文件,因此CDN将为已经压缩的文件提供服务。不管怎样,我就是这么做的。下面是一段C代码,演示了在将文件上载到Azure blob存储之前如何压缩文件:

var blobData = new byte[] { ... you data goes here ... };

var stream = new MemoryStream();
var zipStream = new GZipStream(stream, CompressionMode.Compress))
zipStream.Write(data, 0, blobData.Length);
zipStream.Close();

var storageCredentials = new StorageCredentials("myaccountname", "mykey");
var storageAccount = new CloudStorageAccount(storageCredentials, true);
var blobClient = storageAccount.CreateCloudBlobClient();
var container = blobClient.GetContainerReference("$root");

var blob = container.GetBlockBlobReference("mycompressedfile.txt");
blob.Properties.ContentEncoding = "gzip";
blob.UploadFromStream(stream);
最新答复: 所有3个Azure CDN提供商;Verizon、Akamai和Microsoft支持基于接受编码请求头压缩端点上的资源以返回到客户端。 有关更多详细信息,请参阅文档

资源必须满足某些条件,并且资源MIME类型必须明确配置为压缩