2012-08-25 74 views
0

Jetty允許使用jetty-rewrite功能設置標題,但它看起來不是很聰明,只接受一個固定的字符串。如何在Jetty中設置動態Expires標題?

如何讓Jetty發送「8小時過期」標題?

與Apache的.htaccess和指定mod_expires你可以做"access plus 8 hours"但當然碼頭不理解.htaccess文件,也可以找到在碼頭,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> 

類似結構的任何信息這只是發回文字「access plus 1 day」,這當然被客戶忽略了。

可以/應該用servlet過濾器來完成嗎? Jetty有一個Gzip filter,但似乎沒有提供類似的動態設置標題。

回答

1

這可能是一個不錯的功能..

公開賽bugs.eclipse.org下RT /碼頭增強它。歡迎修補程序,無論是附加到bug或推入我們的gerrit實例。

這就是說... jetty xml實際上是一個java層上的XML層,所以我懷疑如果你能找到它的APi,你可以在java中實現這樣的功能。我認爲有一個joda時間庫有一個方法,你可以連接一些可以調用新的DateTime()。plusHours(8)來填充該值的方法。

雖然可能更好地添加它作爲一個功能。

+0

我最喜歡的是能夠直接在.htaccess文件中處理這些規則(所以我可以使用熟悉和簡潔的語法),但我猜測打開增強請求對於添加htaccess支持? –

+0

去吧,如果我們有一個資源處理程序來修改格式,那將是很好的...我不能說我們會很快得到它,但如果它有人可能會加強並實施它並貢獻:) –

相關問題