您可以先在 public_html 之外部署文件,然后将当前版本符号链接到 public_html 文件夹,如下所示:
1) 在您的 config/deploy.rb 或 config/deploy/****.rb 文件中,将 deploy_to 设置为public_html 之外的另一个文件夹
set :deploy_to , '/home/username/deploy'
2) 在您的 config/deploy.rb 或 config/deploy/****.rb 文件中,添加一个带有 public_html 路径的变量
set :public_html_path, '/home/username/public_html'
3) 添加自定义任务 release_public_html 以在创建当前版本符号链接后对 public_html 文件夹进行符号链接
after "deploy:symlink:release", "deploy:symlink:release_public_html"
namespace :deploy do
namespace :symlink do
desc "Symlink release to current"
task :release_public_html do
on release_roles :all do
public_html_path = "#{fetch(:public_html_path)}"
execute :rm, "-rf", public_html_path
execute :ln, "-s", current_path, public_html_path
end
end
end
end