0

Jetty 允许使用 jetty-rewrite 功能设置标头,但它似乎不是很聪明,并且只接受固定的字符串。

如何告诉 Jetty 发送“8 小时后过期”标头?

使用 Apache .htaccess 和 mod_expires 您可以执行“访问加 8 小时”,但当然 Jetty 不理解 .htaccess 文件,我也无法在 jetty-rewrite.xml 中找到类似构造的任何信息

<Call name="addRule">
    <Arg>
        <New class="org.eclipse.jetty.rewrite.handler.HeaderPatternRule">
            <Set name="pattern">*.png</Set>
            <Set name="name">Expires</Set>
            <Set name="value">access plus 8 hours</Set>
        </New>
    </Arg>
</Call>

这只是将文字文​​本“访问加 1 天”发回,这当然会被客户端忽略。

可以/应该使用 servlet 过滤器来完成吗?Jetty 有一个Gzip 过滤器,但似乎没有为动态设置标题提供类似的东西。

4

1 回答 1

1

这可能是一个不错的功能..

在 RT/Jetty 下的 bugs.eclipse.org 上打开它的增强功能。欢迎使用补丁,可以附加到错误或推送到我们的 gerrit 实例中。

话虽这么说......码头xml实际上是java上的一个xml层,所以我怀疑如果你能找到它的API,你实际上可以在java中这样做。我认为有一个 joda 时间库有一个方法,您可以在其中连接一些调用 new DateTime().plusHours(8) 来填充该值的东西。

可能最好将其添加为功能。

于 2012-08-27T12:02:29.950 回答