【发布时间】:2012-06-09 07:43:01
【问题描述】:
我有一个在 tomcat 6 上运行的 jsf 应用程序(mojarra 2.1.8,primefaces 3.3)。在使用 google page-speed 在 firebug 中分析页面时,我意识到我可以通过 gzip 压缩来优化一些东西。
Compressing the following resources with gzip could reduce their transfer size by 371,1KiB (74% reduction).
Compressing http://localhost:8080/someApp/javax.faces.resource/jquery/jquery.js.jsf?ln=primefaces could save 72,5KiB (74% reduction).
Compressing http://localhost:8080/someApp/javax.faces.resource/theme.css.jsf?ln=primefaces-aristo could save 53,4KiB (71% reduction).
Compressing http://localhost:8080/someApp/javax.faces.resource/jsf.js.jsf?ln=javax.faces could save 49,6KiB (78% reduction).
...
我已经在 server.xml 中打开了压缩
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"
compression="on"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,application/javascript,application/json,text/javascript"/>
但它不会压缩上面列出的文件。
我还需要做什么才能使压缩工作?
强尼
【问题讨论】:
-
您的 .js.jsf 和 .css.jsf 资源的 MIME 类型是什么?您使用什么客户端进行测试?
-
您好 Christoper,感谢您的回复。这些资源由 Primefaces 即时提供/添加。 .js.jsf 有 application/javascript(在 compressableMimeType 中列出),而 .css.jsf 有 text/css(好的,没有在 compressableMimeType 中列出)。我的客户:WinXP 上最新的 Chrome 浏览器。强尼
-
从服务器请求这些资源时,您是否在响应中获得了正确的 Content-Type 标头?您是否还获得了 Content-Length 标头?
-
嗨,克里斯托弗,感谢您帮助我。我得到了正确的内容类型和内容长度。强尼
标签: tomcat jsf-2 primefaces mojarra