繁体   English   中英

使用Capistrano 3将PHP文件部署到public_html而不是releases文件夹

[英]Deploy PHP Files with Capistrano 3 to public_html instead of releases folder

我是Capistrano 3的新手。
我想将我的php应用程序部署到public_html文件夹(我正在使用cPanel)

我设置我的deploy_to到这样的事情:
set :deploy_to, '/home/username/public_html'
当我跑步时:
cap production deploy已成功上传到我的服务器,但已部署到releasescurrent文件夹,而不是根目录为public_html

我的问题是,如何使Capistrano上传到我的public_html根文件夹?

您将需要部署到类似/ home / username / code的地方

然后,您可以创建从/ home / username / public_html到/ home / username / code的符号链接

该命令如下所示:

ln -s /home/username/code /home/username/public_html

您可以先在public_html外部部署文件,然后将当前版本符号链接到public_html fodler进行处理,如下所示:

1)在您的config / deploy.rbconfig / deploy / ****。rb文件中,将deploy_to设置为public_html之外的另一个文件夹,例如

set :deploy_to , '/home/username/deploy'

2)在您的config / deploy.rbconfig / 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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM