capistrano部署中没有此类文件或目录

时间:2011-12-08 19:25:46

标签: ruby-on-rails capistrano

执行上限部署时出现以下错误:

*** [err :: 11.15.19.46] find: `/var/www/emclab/releases/20111208184942/public/images'
*** [err :: 11.15.19.46] : No such file or directory
*** [err :: 11.15.19.46] find: `/var/www/emclab/releases/20111208184942/public/stylesheets': No such file or directory
*** [err :: 11.15.19.46] find: `/var/www/emclab/releases/20111208184942/public/javascripts'
*** [err :: 11.15.19.46] : No such file or directory

有什么想法导致错误?感谢。

2 个答案:

答案 0 :(得分:35)

我假设您已更新到rails 3.1

我最近遇到了同样的问题。解决方案:

将此行添加到deploy.rb

set :normalize_asset_timestamps, false

事实上,这个问题是重复:Capistrano and deployment of a website from Github

只发布它,因为发现谷歌相当高,而且这个没有得到答案

答案 1 :(得分:11)

我也在努力解决这个问题。

假设您使用的是Rails 3.1,答案就在这个网页上:http://guides.rubyonrails.org/asset_pipeline.html

简短的回答是您的资产(imgs,js,css)尚未编译用于部署到生产。您可以使用此命令手动编译它们。

bundle exec rake assets:precompile

或者你可以从你的Capfile取消注释这一行:

load 'deploy/assets'

或者您可以将生产环境设置为在生产中编译资产,但我发现该解决方案只会产生更多问题,并会推荐上述两个建议。