目前格式:HTML/XML
在 JBoss 中啟用 GZIP 壓縮,可以提升前端與伺服器之間的傳輸效率。以下是針對不同版本的 JBoss(特別是 JBoss EAP 7/8 或 WildFly)啟用 GZIP 壓縮的方式:
1. 使用 Undertow (WildFly / JBoss EAP 7/8) 啟用 GZIP
如果你的 JBoss 是基於 Undertow 的(如 WildFly 或 JBoss EAP 7/8),可以透過修改 standalone.xml 或 domain.xml 來啟用壓縮功能。
步驟:
打開:
bash
複製
編輯
$JBOSS_HOME/standalone/configuration/standalone.xml
或是 domain 模式下的:
bash
複製
編輯
$JBOSS_HOME/domain/configuration/domain.xml
找到 <subsystem xmlns="urn:jboss:domain:undertow:..."> 這個區塊。
在對應的 server 內設定 http-listener,加上 compression="on" 及指定的 MIME 類型。
範例設定:
xml
複製
編輯
<server name="default-server">
<http-listener name="default" socket-binding="http" compression="on"
compressible-media-types="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json"/>
...
</server>
compression="on":啟用 GZIP 壓縮。
compressible-media-types:指定哪些 MIME 類型的回應會被壓縮。
2. 啟用 HTTPS Listener 的 GZIP(若有使用 SSL)
如果是 https-listener,也同樣加上:
xml
複製
編輯
<https-listener name="https" socket-binding="https" security-realm="ApplicationRealm"
compression="on"
compressible-media-types="text/html,text/xml,text/plain,application/json"/>
3. 重新啟動 JBoss
修改完成後,重新啟動 JBoss 服務讓設定生效:
bash
複製
編輯
$JBOSS_HOME/bin/standalone.sh
4. 驗證 GZIP 是否啟用
使用瀏覽器開發者工具或 curl 測試:
bash
複製
編輯
curl -H "Accept-Encoding: gzip" -I http://your-server/your-app
若成功,會看到:
css
複製
編輯
Content-Encoding: gzip
備註:
Static Content:這種方式主要壓縮靜態資源或 Servlet 回應的內容。
Spring Boot 應用:如果你的 WAR 是 Spring Boot 應用,還可以在 application.yml 中搭配設定 GZIP,但這是應用層級的壓縮。
5ZyoIEpCb3NzIOS4reWVn+eUqCBHWklQIOWjk+e4ru+8jOWPr+S7peaPkOWNh+WJjeerr+iIh+S8uuacjeWZqOS5i+mWk+eahOWCs+i8uOaViOeOh+OAguS7peS4i+aYr+mHneWwjeS4jeWQjOeJiOacrOeahCBKQm9zc++8iOeJueWIpeaYryBKQm9zcyBFQVAgNy84IOaIliBXaWxkRmx577yJ5ZWf55SoIEdaSVAg5aOT57iu55qE5pa55byP77yaCgoKCjEuIOS9v+eUqCBVbmRlcnRvdyAoV2lsZEZseSAvIEpCb3NzIEVBUCA3LzgpIOWVn+eUqCBHWklQCgrlpoLmnpzkvaDnmoQgSkJvc3Mg5piv5Z+65pa8IFVuZGVydG93IOeahO+8iOWmgiBXaWxkRmx5IOaIliBKQm9zcyBFQVAgNy8477yJ77yM5Y+v5Lul6YCP6YGO5L+u5pS5IHN0YW5kYWxvbmUueG1sIOaIliBkb21haW4ueG1sIOS+huWVn+eUqOWjk+e4ruWKn+iDveOAggoKCgrmraXpqZ/vvJoKCuaJk+mWi++8mgoKCgpiYXNoCgropIfoo70KCue3qOi8rwoKJEpCT1NTX0hPTUUvc3RhbmRhbG9uZS9jb25maWd1cmF0aW9uL3N0YW5kYWxvbmUueG1sCgrmiJbmmK8gZG9tYWluIOaooeW8j+S4i+eahO+8mgoKCgpiYXNoCgropIfoo70KCue3qOi8rwoKJEpCT1NTX0hPTUUvZG9tYWluL2NvbmZpZ3VyYXRpb24vZG9tYWluLnhtbAoK5om+5YiwIDxzdWJzeXN0ZW0geG1sbnM9InVybjpqYm9zczpkb21haW46dW5kZXJ0b3c6Li4uIj4g6YCZ5YCL5Y2A5aGK44CCCgoKCuWcqOWwjeaHieeahCBzZXJ2ZXIg5YWn6Kit5a6aIGh0dHAtbGlzdGVuZXLvvIzliqDkuIogY29tcHJlc3Npb249Im9uIiDlj4rmjIflrprnmoQgTUlNRSDpoZ7lnovjgIIKCgoK56+E5L6L6Kit5a6a77yaCgp4bWwKCuikh+ijvQoK57eo6LyvCgo8c2VydmVyIG5hbWU9ImRlZmF1bHQtc2VydmVyIj4KCiAgICA8aHR0cC1saXN0ZW5lciBuYW1lPSJkZWZhdWx0IiBzb2NrZXQtYmluZGluZz0iaHR0cCIgY29tcHJlc3Npb249Im9uIiAKCiAgICAgICAgICAgICAgICAgICBjb21wcmVzc2libGUtbWVkaWEtdHlwZXM9InRleHQvaHRtbCx0ZXh0L3htbCx0ZXh0L3BsYWluLHRleHQvY3NzLHRleHQvamF2YXNjcmlwdCxhcHBsaWNhdGlvbi9qYXZhc2NyaXB0LGFwcGxpY2F0aW9uL2pzb24iLz4KCiAgICAuLi4KCjwvc2VydmVyPgoKY29tcHJlc3Npb249Im9uIu+8muWVn+eUqCBHWklQIOWjk+e4ruOAggoKCgpjb21wcmVzc2libGUtbWVkaWEtdHlwZXPvvJrmjIflrprlk6rkupsgTUlNRSDpoZ7lnovnmoTlm57mh4nmnIPooqvlo5PnuK7jgIIKCgoKMi4g5ZWf55SoIEhUVFBTIExpc3RlbmVyIOeahCBHWklQ77yI6Iul5pyJ5L2/55SoIFNTTO+8iQoK5aaC5p6c5pivIGh0dHBzLWxpc3RlbmVy77yM5Lmf5ZCM5qij5Yqg5LiK77yaCgoKCnhtbAoK6KSH6KO9Cgrnt6jovK8KCjxodHRwcy1saXN0ZW5lciBuYW1lPSJodHRwcyIgc29ja2V0LWJpbmRpbmc9Imh0dHBzIiBzZWN1cml0eS1yZWFsbT0iQXBwbGljYXRpb25SZWFsbSIKCiAgICBjb21wcmVzc2lvbj0ib24iCgogICAgY29tcHJlc3NpYmxlLW1lZGlhLXR5cGVzPSJ0ZXh0L2h0bWwsdGV4dC94bWwsdGV4dC9wbGFpbixhcHBsaWNhdGlvbi9qc29uIi8+CgozLiDph43mlrDllZ/li5UgSkJvc3MKCuS/ruaUueWujOaIkOW+jO+8jOmHjeaWsOWVn+WLlSBKQm9zcyDmnI3li5norpPoqK3lrprnlJ/mlYjvvJoKCgoKYmFzaAoK6KSH6KO9Cgrnt6jovK8KCiRKQk9TU19IT01FL2Jpbi9zdGFuZGFsb25lLnNoCgo0LiDpqZforYkgR1pJUCDmmK/lkKbllZ/nlKgKCuS9v+eUqOeAj+imveWZqOmWi+eZvOiAheW3peWFt+aIliBjdXJsIOa4rOippu+8mgoKCgpiYXNoCgropIfoo70KCue3qOi8rwoKY3VybCAtSCAiQWNjZXB0LUVuY29kaW5nOiBnemlwIiAtSSBodHRwOi8veW91ci1zZXJ2ZXIveW91ci1hcHAKCuiLpeaIkOWKn++8jOacg+eci+WIsO+8mgoKCgpjc3MKCuikh+ijvQoK57eo6LyvCgpDb250ZW50LUVuY29kaW5nOiBnemlwCgrlgpnoqLvvvJoKClN0YXRpYyBDb250ZW5077ya6YCZ56iu5pa55byP5Li76KaB5aOT57iu6Z2c5oWL6LOH5rqQ5oiWIFNlcnZsZXQg5Zue5oeJ55qE5YWn5a6544CCCgoKClNwcmluZyBCb290IOaHieeUqO+8muWmguaenOS9oOeahCBXQVIg5pivIFNwcmluZyBCb290IOaHieeUqO+8jOmChOWPr+S7peWcqCBhcHBsaWNhdGlvbi55bWwg5Lit5pCt6YWN6Kit5a6aIEdaSVDvvIzkvYbpgJnmmK/mh4nnlKjlsaTntJrnmoTlo5PnuK7jgIIK