1
所以我的應用程序/樣式表/ screen.css.sass的Rails 3.1資產管道CSS manifest.yml
對生產的路徑變得東西/assets/screen-md5hash.css
該文件得到服務,但它不會出現在manifest.yml中,也不會出現在public/assets文件夾中(因此我認爲它可以通過Rails獲得服務,而不是Apache)。
爲什麼不在那裏?
所以我的應用程序/樣式表/ screen.css.sass的Rails 3.1資產管道CSS manifest.yml
對生產的路徑變得東西/assets/screen-md5hash.css
該文件得到服務,但它不會出現在manifest.yml中,也不會出現在public/assets文件夾中(因此我認爲它可以通過Rails獲得服務,而不是Apache)。
爲什麼不在那裏?
你是對的 - 文件由Sprockets服務。
這表明你的管道配置設置有幾個問題。
首先,你可能仍然有
config.assets.compile = true
在production.rb
。
它應該是假的。如果它是真的,那麼任何未預編譯的資源(以及在公共目錄中)都由Sprockets服務。
第二個是如果你想引用任何非命名爲application
的js或css文件,那麼你必須將該文件添加到預編譯數組中,以便它被預編譯用於生產。
它從清單中缺失的事實表明它沒有預編譯。
你應該application.rb
補充一點:
config.assets.precompile += ['screen.css']
如果這是一個升級程序,我可以建議你檢查對last section of the pipeline guide所有的管道配置設置。
manifest.yml中的其他資產是否公開? – 2012-02-02 16:24:21