Saya memiliki server Jetty yang kompresi tidak diaktifkan (saya menguji ini di sini ). Bagaimana saya bisa mengaktifkan kompresi?
Saya memiliki server Jetty yang kompresi tidak diaktifkan (saya menguji ini di sini ). Bagaimana saya bisa mengaktifkan kompresi?
Jawaban:
Anda harus mengaktifkan GzipFilterJetty untuk mengembalikan konten yang dikompresi. Lihat di sini tentang cara melakukannya: http://blog.max.berger.name/2010/01/jetty-7-gzip-filter.html
Anda juga dapat menggunakan gzipparameter init untuk membuat Jetty mencari konten terkompresi. Itu berarti jika file file.txttersebut diminta, Jetty akan menonton file bernama file.txt.gzdan mengembalikannya.
(?) Di Jetty 8 dan kemudian, Anda akan harus menggunakan GzipHandlersebagai GzipFiltertampaknya usang / hilang:
<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>
The gzipparameter init masih bekerja, jika Anda ingin hanya melayani konten statis (yang sebenarnya akan lebih efisien daripada pergi melalui handler Gzip). Namun disarankan untuk menyimpan salinan yang tidak terkompresi di server juga, karena Jetty mungkin perlu menyajikan konten yang tidak terkompresi untuk browser yang tidak kompatibel (kebanyakan IE) .
WEB-INF/jetty-env.xmldari webapp (ada pilihan lain juga, jetty-web.xml, web-jetty.xml, classes/org/eclipse/jetty/webapp/webdefault.xml, ...)