Rails 3.1 Errno:: Разрешение EACCES запрещено
Rails 3.1 Пассажир в среде разработки Apache
Когда я иду для доступа к индексу (т.е. GET) для маршрута, я получаю:
Errno::EACCES in Crb_agendas#index
Showing /var/www/crbagenda/app/views/layouts/application.html.erb where line #5 raised:
Permission denied - /var/www/crbagenda/tmp/cache/assets/E2C
Extracted source (around line #5):
2: <html>
3: <head>
4: <title>CrbAgendas</title>
5: <%= stylesheet_link_tag "application" %>
6: <%= javascript_include_tag "application" %>
7: <%= csrf_meta_tags %>
8: </head>
Rails.root: /var/www/crbagenda
Когда я перехожу к указанному пути (/var/www/crbagenda/tmp/cache/assets/E2C), нет папки E2C и root (то, что работает apache) владеет ресурсами dir... не уверен, что Я здесь ошибся... или что еще я мог показать, чтобы помочь.
Ответы
Ответ 1
Я нашел этот пост, когда столкнулся с этой ошибкой, и запуск chmod 777
здесь не является решением.
Вам нужно провести некоторое исследование того, как разрешить групповые разрешения и настроить параметры апача соответствующим образом. Вот поток Stack Exchange, который подробно описывает это и содержит полезные ссылки. Убедитесь, что apache выполнил чтение, запись и выполнение доступа к соответствующим каталогам, но не просто позволяет ANYONE изменить каталог. Найдите свою группу апачей систем и запустите chown
и chmod -g+[What permissions apache needs goes here]
Я бы предложил не запускать это с помощью параметра -R
и активно изучать, какое разрешение apache необходимо для определенных каталогов. Ссылка на поток Stack Exchange, относящийся к разрешениям и разрешениям apache в целом
Ответ 2
Обновление: Да, этот ответ пришел из-за невежества, а затем, похоже, приобрел тягу. В любом случае, реальный ответ можно найти в Остин Томек ответить
Взломали это, сделав chmod 777 в каталоге tmp, поэтому я предполагаю, что это мое незнание настроек пользователя/разрешений.
Ответ 3
Я полностью удалил папку tmp, которая сработала для меня. Он просто восстанавливается веб-сервером.
Ответ 4
Просто запустите chown в папке проекта
chown -R www-data /var/www/
Ответ 5
Для меня это было полезно:
sudo chown -R username app_path
Ответ 6
Благодаря вышеприведенным сообщениям я тоже решил решить свою проблему. Лично важную папку обозначили "Скрытый" (следуйте по пути ERROR Ошибка: Permission denied -.../_ netrc (Errno:: EACCES) Как только я щелкнул правой кнопкой мыши и установил параметры своей папки NOT HIDDEN, тогда все сработало отлично!
Ответ 7
В моем случае изменение прав и права собственности на каталог не помогло (ну это было необходимо). Оказалось, что Selinux запустил (по умолчанию включен в Fedora), а отключением было лечение:
$ sudo setenforce 0
Чтобы сделать изменение постоянным, необходимо изменить настройки в файле /etc/selinux/config
:
SELINUX=disabled