簡體   English   中英

Azure 存儲帳戶 Static 網站需要很長時間才能加載

[英]Azure Storage Account Static Website takes lot of time to load

我已經在 Azure 存儲帳戶 Static 網站中部署了內置在 Angular 中的單頁應用程序。 但是最初加載網站需要很多時間。 經過調查,我發現加載一個js文件大約需要 1.2 分鍾 - main.af203c3f3d3f3672aa00.js ,大小只有 4.8MB。 同樣在響應 header 我只能看到以下標題 -

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 存儲帳戶中啟用 Static 網站的壓縮?

使用 Azure 存儲資源管理器,您可以在每個 blob 上設置內容類型、緩存控制、內容編碼。 將 your.js 文件轉換為 .gzip,然后在文件上設置正確的元數據。

這里有一個可以將javascript轉換為gzip的在線工具: http://cnvyr.io/online

在此處輸入圖像描述

考慮到您正在按原樣上傳文件,簡單地將 blob 的內容編碼屬性設置為gzip並沒有幫助。

為此,您需要首先使用 gzip 壓縮來壓縮文件,然后將壓縮文件上傳到 blob 存儲中。 您還需要將 blob 的內容編碼屬性設置為“gzip”。

如果您正在尋找第三方工具來執行此操作,請查看 Cerebrata Cerulean ( https://www.cerebrata.com )。 它有一個功能,您可以指示它在上傳之前使用 gzip 或 deflate 壓縮文件。 它也會自動將 blob 的內容編碼屬性設置為“gzip”或“deflate”。

完全披露:我正在處理這個應用程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM