我在Fedora 18上安装了Redmine。使用webrick进行testing时,安装工作正常,正如在官方的“HowTo”中所解释的。
现在我想用Passenger和Apache来托pipeRedmine。 我得到的是:
乘客错误#2尝试访问“/var/www/redmine/config/environment.rb”时发生错误:无法统计'/var/www/redmine/config/environment.rb':权限被拒绝(错误= 13)
Apache对该文件没有读取权限。 请修复相关的文件权限。
在几次尝试解决问题之后,我把包含内容的整个/var/www/redmine目录的所有权交给了apache用户,并将权限recursion地更改为777.我向apache用户发送了su命令, environment.rb文件没有任何问题。 所以我觉得毕竟这不是一个权限问题,但是面对这个明确的错误信息,我不知道。
这里可能是什么问题,以及如何解决它的任何想法(最好是一个解决scheme,使我可以将权限更改回合理的价值)?
脚注 :
我忘记了Fedora默认启用了SELinux。 closuresSELinux删除错误。
正如dawud指出的那样,closuresSELinux不应该被认为是解决scheme – 相反,SELinux应该被configuration为允许Apache使用这些文件。
快速解决scheme是在有问题的目录上运行restorecon 。 这将安全上下文设置为父目录的预期types。 我的文件位于/ var / www的一个子目录中,它们被设置为httpd_sys_content_t,Apache被允许访问它们。 如果他们在其他地方,我将不得不手动改变types。
解决了SELinux问题后,文件权限可以恢复到通常的水平,而没有其他问题。