【发布时间】:2011-05-17 21:20:25
【问题描述】:
在 Linode、RVM、Rails 3、带有乘客模块、carrierwave 和 mini-magick 的 Apache 上运行 Ubuntu 10.04
我明白了:
Rails Error: Unable to access log file. Please ensure that /srv/www/mysite.com/testapp/log/production.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.
和Errno::EACCES (Permission denied /srv/www/mysite.com/testapp/public/uploads/tmp/20110517-1707-2938-6455):
我跑了chmod -R root:root /srv/www/mysite.com/testapp
然后:chmod -R www-data:www-data /srv/www/mysite.com/testapp & chmod -R www-data:www-data /srv/www/mysite.com/testapp/public/uploads
由于只有 2 个目录应该是可写的,那就是日志文件和上传目录,我试图保护其余的目录。是否还有其他我需要使其可写的文件夹/文件?
【问题讨论】:
-
我认为,您应该使用 chown 而不是 chmod 来设置所有者和组。并使用 chmod 设置实际的权限模式。要检查权限和所有权,请使用命令 ls -l /path/to/file_or_directory
-
@taro - 你是对的。自从我使用 linux 以来已经有一段时间了。做了
chown -R root:root /srv/www/mysite.com/testapp然后做了chown -R www-data:www-data /srv/www/mysite.com/testapp/log /srv/www/mysite.com/testapp/public/uploads和chmod 772 /srv/www/mysite.com/testapp/log /srv/www/mysite.com/testapp/public/uploads。这听起来对吗? -
看起来不错,但可能没有这样的组根,有轮子。此外,在这种情况下,通常为目录设置 chmod 755。
-
这对你有用吗?
标签: ruby-on-rails ruby-on-rails-3