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

選取之後,畫面會列出一些設定,主要是 dynamicTypes 和 staticTypes 兩種類別的設定
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

參考資料

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