我正在尝试将公用文件夹符号链接到我的 rails 应用程序到我服务器上的 public_html 文件夹,但我似乎无法正确处理。
我的 deploy.rb 文件中有一个任务,名为:link_release_to_public
:
namespace :deploy do
task :link_release_to_public do
run "cd ~"
run "rm -rf ~/public_html"
run "ln -sf ~/#{current_path}/public ~/public_html"
end
end
在其中,我删除了现有的“public_html”文件夹,然后使用以下命令创建符号链接:
ln -sf ~/rails_app/releases/current/public ~/public_html
目标是用指向当前版本的公共文件夹的符号链接替换 ~/public_html。
但是,运行cap deploy:link_release_to_public
成功完成,而不是将文件直接链接到 ~/public_html 文件夹,而是创建“public_html”文件夹,然后在 ~/public_html 中符号链接“public”,以便:~/public_html/public
.
如果我直接在服务器上(通过 SSH)在任务中执行完全相同的步骤,它会完美运行。我不明白我做错了什么。