我已经为此奋斗了几个小时,但现在我被困住了,我无法继续前进。
当 Capifony 进入缓存预热阶段时,尝试加载供应商类时失败,但供应商目录的路径似乎是错误的;
** [out :: example.com] PHP Fatal error: main(): Failed opening required '/var/www/example.com/releases/20120917131025/src/MyBundle/Bundle/ProcessBundle/Controller../../../../../../vendor/quail/quail/quail.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/example.com/releases/20120917131025/src/MyBundle/Bundle/ProcessBundle/Controller/DefaultController.php on line 0
您可以看到它没有正确构建目录;
ProcessBundle/Controller../../
应该
ProcessBundle/Controller/../../
它无法加载的特定供应商目录/类实际上在 repo 中,它唯一没有通过 bin/vendors 加载,因为它在公共 git repo 中不可用。
我的 deploy.rb 很平静,它并不总是这样,但是在过去的几个小时里不断地评论和改变值已经造成了损失。
set :application, "project"
set :domain, "example.com"
set :deploy_to, "/var/www/example.com/"
set :app_path, "app"
set :repository, "git@github.com:project/project.git"
set :scm, :git
set :deploy_via, :remote_cache
set :model_manager, "doctrine"
# Or: `propel`
role :web, domain # Your HTTP server, Apache/etc
role :app, domain # This may be the same as your `Web` server
role :db, domain, :primary => true # This is where Symfony2 migrations will run
set :keep_releases, 3
set :user, "deployer-user"
set :runner, "deployer-user"
set :webserver_user, "deployer-user"
set :branch, "master"
set :port, 2222
# Be more verbose by uncommenting the following line
logger.level = Logger::MAX_LEVEL
default_run_options[:pty] = true
ssh_options[:forward_agent] = true
set :use_sudo, false
set :shared_files, ["app/config/parameters.ini"]
set :shared_children, [app_path + "/logs", web_path + "/uploads", "vendor"]
# set :update_vendors, true
# set :use_composer, true
提前致谢。
编辑我有一条要求杀死它的路径。更新,现在它工作正常。结束问题。