簡體   English   中英

如何使用 Rails 控制特定文件的 max-age?

[英]How can I control max-age for particular files with Rails?

我有 Rails 服務於我的 static 資產。 他們中的大多數人的名字中都有哈希值,並且會在很遠的將來到期。 但是對於一個文件,我無法在其名稱中使用 hash 來提供它,因此我需要控制到期日期。

我的 application.rb 中有這個適用於所有 static 資產:

config.static_cache_control = "public, max-age=2592000"

有沒有辦法讓我只為一個文件設置不同的最大年齡? 我知道我可以在ActionDispatch::Static之后創建一個新的中間件並更改某些文件的值(請參閱這篇文章)...但是這將針對每個請求運行,即使是那些不是 static 資產的請求。 有更優雅的解決方案嗎?

一個糟糕的技術可能是修復 route.rb 中文件的 URL。 您可以為此路由定義一個 Controller 來修復您想要的 cache_control 並使用send_data方法來為文件提供服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM