大量のアセットを持つRailsアプリで作業していますが、残念ながらこれを減らすことはできません。本番環境ではこれは問題ではありませんが、開発中に訪問ページあたり〜20件のアセットリクエストをアプリケーションサーバー(webrickやThinなど)ですぐに処理することはできません。アセットを自動的にコンパイルしてnginx(開発)で提供する
だから私はpublic/assets
で何かを提供するために開発でnginxを使い始めました。 nginxは純粋に開発機能であることに注意してください。私たちは本番環境でそれを使用するつもりはありません。 rake assets:precompile
は、悲しいことに二つの問題が(後者は最も重要なものであることがある
- 設定し
config.assets.debug
偽 - 実行するために:
、それが機能するために私は二つのことをしなければなりませんでした)と私の設定:
- すべてのアセットを手動で変更する必要があります
rake assets:precompile
もう一度 - 新しくコンパイルされたアセットをアプリサーバーが受け取るためには、再起動が必要です。
プリコンパイル後にRailsサーバーを再起動する必要のない正しいnginx/Asset Pipelineの設定は何ですか?
自動コンパイルも歓迎します。
- すべてのアセットを手動で変更する必要があります
UnicornとPumaのような他のRailsサーバーを試しましたか?あなたはいつも[Guard](https://github.com/guard/guard)を使ってファイルの変更を監視し、 'rake assets:precompile'を実行してサーバを再起動することができます。 – max
+1ガード。 Unicorn/Pumaは特殊なHTTPサーバではありません(特にUnicornは設計上高速なクライアントを想定しています)。可能であれば、資産としてnginxを使用したいと考えています。 – vemv
アセットパイプラインを上回ったようなサウンドのようなものです.Railsは、開発時に静的資産を提供するために実際には構築されていません。デプロイメント時に実行されるはずです。だから、サーバを再起動するのはかなり厄介なことになるだろう。だから、あなたは、例えば、ハヤブサやブロッコリーを使って、代わりにあなたの資産を沸かせて見ることができます。 – max