我正在进行一个新的Fedora 16安装,我试图让Apache启动并运行。 我非常熟悉Linux和CentOS,但是我对Fedora和SELinux有很less的经验(不pipe是什么)。
首先,在安装Apache之后,我甚至看不到示例网页。 我做了一些search,并最终通过编辑iptables来解决这个问题。
sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT sudo iptables-save
我继续前进,并开始删除Web根目录中的一些文件,确保权限设置正确。
$ ls -Rlhp /var/www/html/ /var/www/html/: total 8.0K drwxr-xr-x. 2 apache root 4.0K Apr 20 22:47 files/ /var/www/html/files: total 25M -rw-r--r--. 1 apache users 25M Apr 20 22:47 SRR022918.errors.tar.gz
但是当我导航到相应的URL( my.server.edu/files/SRR022918.errors.tar.gz ),我得到了403权限被拒绝的错误。 我检查了Apache错误日志,发现这个消息。
[Fri Apr 20 23:09:55 2012] [error] [client xxx.xxx.xx.xx] (13)Permission denied: file permissions deny server access: /var/www/html/files/SRR022918.errors.tar.gz
我试图设置文件和目录权限为777,但这并没有解决问题。 这真的很腥,所以我猜这与SELinux有关。 我没有SELinux的经验,所以我在正确的轨道上? 如果是这样,我该如何解决这个问题?
如果内存服务,您可能需要运行chcon -R -h -t httpd_sys_content_t /var/www/html
这将recursion地将您的内容目录设置为适当的Apache上下文。
正如您所料,此文件权限问题是由于SELinux所致。 它相当复杂,但CentOS的好人们已经把一个相当不错的wiki放到了一起。 总之,您可以禁用SELinux(完全不好的主意),将其设置为宽容模式(稍微不好的主意),或使用SELinux。 由于维基以相当简洁的方式回顾了细节,我会保持干爽,让你阅读维基。
我通过将文件复制到/ var / www / html中,然后使用以下命令恢复该文件夹的默认上下文来修复:
restorecon -Rv /var/www/html