卡皮斯特拉诺指出不再存在的旧版本

时间:2014-04-25 21:56:59

标签: ruby-on-rails capistrano asset-pipeline sprockets

我根据不断变化的情况改变了这个问题。

我的deploy.rb文件:

set :rails_env "production"
set :branch,   "master"
set :keep_releases, 1

set :app_server, "ip address"
set :db_server,  "ip address"
server app_server, :app, :web
role :db, db_server, :primary => true

set :deploy_to, "/var/www"
set :user,      :cool_user

set :repository, "git account"
set :scm, "git"
set :scm_username, "my username"
set :scm_passphrase, "password"

ssh_options[:forward_agent] = true

after 'deploy:restart', 'deploy:cleanup'

after 'deploy:update', 'deploy:symlink'

当我运行部署时,控制台中的一切看起来都很好,没有错误。但是,当我访问该网站时,它指向服务器中不再存在的旧版本。

例如,当我访问/定价页面时,我收到此错误...

Unknown action

The action 'pricing' could not be found for DirectController

在另一页上,我收到此错误...

Template is missing

Missing template layouts/anonymous

我不知道如何将capistrano指向最新版本。任何帮助表示赞赏!感谢。

如果我重新启动服务器,则会收到此错误。

Sprockets::FileNotFound in Home#index

couldn't find file 'angular'
  (in /var/www/releases/20140428003009/app/assets/javascripts/application.js:21)

更新

1 个答案:

答案 0 :(得分:1)

我已经通过将我的angular_js gem从资产组移到我的bundler中的all组来解决了这个问题。我还从服务器内重启apache,而不是从托管网站重新启动。感谢所有的帮助!