Ho un server Jetty che non ha la compressione abilitata (l'ho testato qui ). Come posso abilitare la compressione?
Ho un server Jetty che non ha la compressione abilitata (l'ho testato qui ). Come posso abilitare la compressione?
Risposte:
Devi abilitare il GzipFilterper fare in modo che Jetty restituisca contenuti compressi. Dai un'occhiata qui su come farlo: http://blog.max.berger.name/2010/01/jetty-7-gzip-filter.html
Puoi anche usare il gzipparametro init per fare in modo che Jetty cerchi contenuti compressi. Ciò significa che se il file file.txtviene richiesto, Jetty cercherà un file denominato file.txt.gze lo restituirà.
In Jetty 8 (?) E versioni successive, dovrai usare un GzipHandlercome GzipFiltersembra essere deprecato / mancante:
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="handler">
<New class="org.eclipse.jetty.server.handler.GzipHandler"/>
<!-- package name might have changed in Jetty 9; possibly org.eclipse.jetty.server.handler.gzip.GzipHandler
as per /programming/35725538/jetty-gziphandler-configuration -->
</Set>
</Configure>
Il gzipparametro init funziona ancora, nel caso in cui si desideri servire solo contenuto statico (che in effetti sarebbe più efficiente che passare attraverso il gestore GZip). Tuttavia, è consigliabile conservare anche le copie non compresse sul server, poiché potrebbe essere necessario che Jetty serva contenuti non compressi per browser incompatibili (principalmente IE) .
WEB-INF/jetty-env.xmldella webapp (ci sono anche altre opzioni, jetty-web.xml, web-jetty.xml, classes/org/eclipse/jetty/webapp/webdefault.xml, ...)