productionで運用するときに注意すべきこと。
##application.cssとapplication.jsの動作
アプリケーションで利用するcssとjsをassets:precompileで一つのファイルにまとめてます。その上でlayout/application.html.hamlでincludeして、アプリケーションで利用します。
##cssとjsの設計に注意
デザイナーさんが画面ごとにCSSやJSを別ファイルにして、名前空間が被ってしまうとapplication.cssやapplication.jsにまとめることができません。そうすると、compileの対象ファイルとならずにproductionだと404になってしまいます。
##config.assets.precompileに記述
compileの対象とするために、config.assets.precompileに記述をします。
##assetsの設定はこうしろ
- config.serve_static_assets = false
これ超重要。nginxで見つからないとunicornにいちいち問い合わせがいくのでサーバーの負荷が劇的にあがってしまう。
- config.assets.compress = true
下りgzにするため必須
- config.assets.compile = false
trueにするとサーバーで動的にcompileするためにfalseにしないとだめ
- config.assets.digest = false
digest付与はお好きに。私は好きじゃないのでオフにしています。
- config.assets.debug = false
debug=trueにすると、application.css/jsと個別のファイルの二重読み込みがされます。
##Railsの本が出ます!
RailsとiPhoneではじめるアプリケーション開発