Я использую несущей волны в приложении rails для загрузки файлов. Он отлично работает в моей среде разработки, но на моей производственной виртуальной машине (Ubuntu) я получаю эту ошибку:
Ошибка Errno::EACCES в user#update:
Permission denied - /home/yards/apps/yardsapp/releases/20130616143623/public/uploads/tmp/20130616-1438-14186-3184
/usr/local/lib/ruby/1.9.1/fileutils.rb:244:in `mkdir'
Я почти уверен, что понимаю, что происходит, но я не могу понять, как это исправить. Мой capistrano deploy.rb настроен с пользователем root. Поэтому, когда он создает новую папку выпуска при развертывании, права доступа предоставляются для root (я думаю).
Затем, когда я пытаюсь загрузить файл, я получаю эту ошибку, потому что nginx пытается выполнить mkdir как www-данные.
Я мог бы выбрать папку после развертывания, и она работает ... но затем другое развертывание создает еще один новый каталог с владельцем, установленным как root по умолчанию.
По крайней мере, я думаю, что это то, что происходит. У кого-нибудь есть идеи о том, как я должен это делать?