即使我已经掠夺资产:预编译我的所有资产,我似乎仍然很难让heroku正确地缓存它们.我不断得到类似的东西
2011-06-04T16:40:20+00:00 app[web.1]: cache: [GET /assets/application-516c0fa9926527ab92d849148e557ee6.css] stale,invalid,store 2011-06-04T16:40:22+00:00 app[web.1]: cache: [GET /assets/logo-3a84e73bd76ca1ab9629d0a92eac7d4f.png] stale,store
从我的日志.虽然我用firebug检查时似乎得到了一个HTTP 304.我做错了吗?
解决方法
这
blog post有很好的答案和几个选项.博客文章看起来并不严肃,但这是推荐阅读.
完整网址:
http://jimmycuadra.com/posts/the-challenge-of-asset-packaging-on-heroku
让Varnish缓存并将其作为静态内容提供是非常棒的,不需要预编译的rake任务.
更新2012年3月20日
世界变化很快. heroku的Cedar堆栈就是为此而建的. heroku创建myapp –stack cedar请记住在application.rb中添加这行代码以在deploy上编译.
config.assets.initialize_on_precompile = false
/ UPDATE