Как я могу заставить Capistrano включать файлы .htaccess в развертывания? - PullRequest
3 голосов
/ 04 июня 2010

Я пытаюсь заставить Capistrano развернуть мое веб-приложение. Я развертываю php-приложение с помощью remote_cache из git-репозитория на хосте Linux через компьютер с Windows. Все разворачивается нормально, за исключением того, что оно не копирует файлы .htaccess. Я новичок в Capistrano и Ruby, поэтому любые указатели будут полезны!

Capistrano 2.5.18 с Ruby 1.8.6 в Windows

Ответы [ 3 ]

1 голос
/ 04 июня 2010

сначала удалите htaccess вручную, затем удаляйте / символическую ссылку при каждом развертывании

  desc "remove .htaccess"
  task :htaccess do
    run "rm #{path}/.htaccess"
    run "ln #{path}/.htaccess #{release_path}/public/.htaccess"
  end
0 голосов
/ 10 августа 2012

Вот что у меня сработало, но я на сайте5, поэтому содержимое вашего файла htaccess, вероятно, будет другим; Я добавил следующее в конец моего файла deploy.rb:

after "deploy:create_symlink", "MYAPPNAME:htaccess_setup"


namespace :MYAPPNAME do
  task :htaccess_setup, :roles => :app do
    htaccess = "PATHTOMYPUBLICDIR/.htaccess"
    run "if [ ! -f #{htaccess} ]; then echo 'PassengerEnabled On' > #{htaccess}; echo 'PassengerAppRoot #{current_path}' >> #{htaccess}; echo '.htaccess created'; else echo '.htaccess already exists (untouched)'; fi"
  end
end
0 голосов
/ 04 июня 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...