Azure 存储帐户静态网站需要很长时间才能加载
Azure Storage Account Static Website takes lot of time to load
我已经在 Azure 存储帐户静态网站中部署了 Angular 内置的单页应用程序。但是最初加载网站需要很多时间。经过调查,我发现加载一个 js
文件大约需要 1.2 分钟 - main.af203c3f3d3f3672aa00.js
大小仅为 4.8MB。
同样在响应 header 中,我只能看到下面的 headers -
Accept-Ranges: bytes
Content-Length: 4787902
Content-MD5: n+dgJsZM2T10m0hxWEpjJw==
Content-Type: text/javascript
Date: Tue, 21 Jul 2020 13:06:45 GMT
ETag: "0x8D82CBF6D4B3910"
Last-Modified: Mon, 20 Jul 2020 15:13:15 GMT
Server: Windows-Azure-Web/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 6ea1da4a-e01e-0045-0b5f-5f06fe000000
x-ms-version: 2018-03-28
Content-Encoding: gzip
这个没有设置。这就是为什么下载 4.8MB 的内容要花这么多时间的原因。
我已经查看了 Azure 门户,没有找到任何启用 Content-Encoding
的选项。
如何在 Azure 存储帐户中为静态网站启用压缩?
考虑到您按原样上传文件,简单地将 blob 的内容编码 属性 设置为 gzip
无济于事。
为此,您需要先使用 gzip 压缩来压缩文件,然后将压缩文件上传到 blob 存储中。您还需要将 blob 的内容编码 属性 设置为 'gzip'.
如果您正在寻找第 3 方工具来执行此操作,请查看 Cerebrata Cerulean (https://www.cerebrata.com)。它有一个功能,您可以指示它在上传之前使用 gzip 或 deflate 压缩文件。它会自动将 blob 的内容编码 属性 设置为 'gzip' 或 'deflate'。
完全披露:我正在处理这个应用程序。
使用 Azure 存储资源管理器,您可以在每个 blob 上设置内容类型、缓存控制和内容编码。将 .js 文件转换为 .gzip,然后在文件上设置正确的元数据。
这里有一个可以将 javascript 转换为 gzip 的在线工具:http://cnvyr.io/online
我已经在 Azure 存储帐户静态网站中部署了 Angular 内置的单页应用程序。但是最初加载网站需要很多时间。经过调查,我发现加载一个 js
文件大约需要 1.2 分钟 - main.af203c3f3d3f3672aa00.js
大小仅为 4.8MB。
同样在响应 header 中,我只能看到下面的 headers -
Accept-Ranges: bytes
Content-Length: 4787902
Content-MD5: n+dgJsZM2T10m0hxWEpjJw==
Content-Type: text/javascript
Date: Tue, 21 Jul 2020 13:06:45 GMT
ETag: "0x8D82CBF6D4B3910"
Last-Modified: Mon, 20 Jul 2020 15:13:15 GMT
Server: Windows-Azure-Web/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 6ea1da4a-e01e-0045-0b5f-5f06fe000000
x-ms-version: 2018-03-28
Content-Encoding: gzip
这个没有设置。这就是为什么下载 4.8MB 的内容要花这么多时间的原因。
我已经查看了 Azure 门户,没有找到任何启用 Content-Encoding
的选项。
如何在 Azure 存储帐户中为静态网站启用压缩?
考虑到您按原样上传文件,简单地将 blob 的内容编码 属性 设置为 gzip
无济于事。
为此,您需要先使用 gzip 压缩来压缩文件,然后将压缩文件上传到 blob 存储中。您还需要将 blob 的内容编码 属性 设置为 'gzip'.
如果您正在寻找第 3 方工具来执行此操作,请查看 Cerebrata Cerulean (https://www.cerebrata.com)。它有一个功能,您可以指示它在上传之前使用 gzip 或 deflate 压缩文件。它会自动将 blob 的内容编码 属性 设置为 'gzip' 或 'deflate'。
完全披露:我正在处理这个应用程序。
使用 Azure 存储资源管理器,您可以在每个 blob 上设置内容类型、缓存控制和内容编码。将 .js 文件转换为 .gzip,然后在文件上设置正确的元数据。
这里有一个可以将 javascript 转换为 gzip 的在线工具:http://cnvyr.io/online