Theme NexT works best with JavaScript enabled

ShunNien's Blog

不積跬步,無以致千里;不積小流,無以成江海。

0%

IIS 動態壓縮

IIS 有一個動態壓縮功能,可以把輸出的網頁壓縮,減少網頁需要的傳輸量。但是預設設定沒有 JSON 資料的動態壓縮。

此篇主要說明如何在 IIS 設定啟動 JSON 檔案類型的壓縮,設定方式可以透過介面操作或是指令列操作;以下範例使用預設 Web API 範本,範例資料取自開放停車資料,先行擷取未壓縮之資料如下。
no compression

GUI 介面操作

開啟 IIS ,先開啟【壓縮】,其後再設定【編輯器】;編輯器即是設定動靜態壓縮類型
IIS Setting

先確認啟用動態內容壓縮
Enable dynamic compression

接著設定編輯器,進入編輯器後,選擇區段(section),選取 system.webServer 下的 httpCompression
Configuration Editor select

選取之後,畫面會列出一些設定,主要是 dynamicTypesstaticTypes 兩種類別的設定
two types set

以此範例來說,設定 json 類型至動態壓縮
add json type to dynamicTypes

之後就可以看到 API 的檔案大小被壓縮過了
Compression file

指令操作

除了透過介面操作,還可以透過指令對 IIS 進行調整;記得使用管理者身分執行。

1
2
3
4
cd /d C:\Windows\System32\inetsrv
appcmd.exe set config -section:system.webServer/httpCompression /+"dynamicTypes.[mimeType='application/json;charset=utf-8',enabled='True']" /commit:apphost
appcmd.exe set config -section:system.webServer/httpCompression /+"dynamicTypes.[mimeType='application/json',enabled='True']" /commit:apphost
iisreset

參考資料

歡迎關注我的其它發布渠道