尽pipe777,乘客抱怨Apache权限

我在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,使我可以将权限更改回合理的价值)?

脚注

  • 这可能与这个问题有关 。
  • 我没有忘记更改权限后重新启动Apache。
  • 我正在运行httpd版本2.4.4-2.fc18,Phusion Passenger版本4.0.4 Redmine版本2.3.1。

我忘记了Fedora默认启用了SELinux。 closuresSELinux删除错误。

正如dawud指出的那样,closuresSELinux不应该被认为是解决scheme – 相反,SELinux应该被configuration为允许Apache使用这些文件。

快速解决scheme是在有问题的目录上运行restorecon 。 这将安全上下文设置为父目录的预期types。 我的文件位于/ var / www的一个子目录中,它们被设置为httpd_sys_content_t,Apache被允许访问它们。 如果他们在其他地方,我将不得不手动改变types。

解决了SELinux问题后,文件权限可以恢复到通常的水平,而没有其他问题。