gpt4 book ai didi

filter - 在 Jetty 中设置 GzipFilter 时出现问题

转载 作者:行者123 更新时间:2023-12-01 10:14:52 32 4
gpt4 key购买 nike

我正在尝试设置 Jetty 以提供压缩的 html 内容。在 web.xml 中,我设置了 GzipFilter 并将其映射到/* 但这似乎不起作用。这是过滤器配置:

<filter>
<filter-name>GZipFilter</filter-name>
<display-name>Jetty's GZip Filter</display-name>
<description>Filter that zips all the content on-the-fly</description>
<filter-class>org.mortbay.servlet.GzipFilter</filter-class>
<init-param>
<param-name>mimeTypes</param-name>
<param-value>text/html</param-value>
</init-param>
</filter>

<filter-mapping>
<filter-name>GZipFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

我刚开始使用 Jetty,所以解决方案可能简单得离谱。如果您可以将我链接到可能对我有帮助的文档,那就太好了。

最佳答案

GZIP 压缩

GZIP 压缩可用于减少“通过线路”发送的数据量。压缩被用作传输编码。这可以大大提高 web 应用程序的性能,但是它也会消耗更多的 CPU,并且一些内容(例如图像)不能很好地压缩。

静态内容

Jetty 默认 Servlet 可以将预压缩的静态内容作为传输编码提供,并避免即时压缩的开销。如果“gzip”初始参数设置为 true,那么 Jetty 将寻找压缩的静态资源。因此,如果收到对“foo.txt”的请求并且文件“foo.txt.gz”存在,那么它将作为具有 gzip 传输编码的“foo.txt”提供。

压缩过滤器

Jetty Gzip 过滤器是一种压缩过滤器,几乎可以应用于任何动态资源 (servlet)。它修复了常用压缩过滤器中的许多错误(例如,处理可以设置内容长度的所有方式),并且一直在使用 Jetty 延续和暂停请求进行测试。

一些用户代理可能被排除在压缩之外,以避免一些常见的浏览器错误(是的,这意味着 IE!)。

引用 jetty 文档: http://docs.codehaus.org/display/JETTY/GZIP+Compression

你可以看看Gzipfilter的源代码,这里有很多有用的注释: http://download.eclipse.org/jetty/stable-7/xref/org/eclipse/jetty/servlets/GzipFilter.html

关于filter - 在 Jetty 中设置 GzipFilter 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2021536/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com