在 apache 中禁用 SELinux 以停止警告

在 apache 中禁用 SELinux 以停止警告

当我重新启动时,我不断收到此错误httpd

文档根目录不存在

除了禁用编辑之外我还能做什么/etc/sysconfig/selinux来修复它?

答案1

使用文本编辑器打开 /etc/selinux/targeted/booleans 文件:

# vi /etc/selinux/targeted/booleans

附加或修改 httpd_disable_trans 的值,如下所示:

httpd_disable_trans=1

保存并关闭文件。键入以下两个命令:

# setsebool httpd_disable_trans 1
# /etc/init.d/httpd restart

PostInstallerF 可能会帮助你

您可以从以下资源获取帮助

答案2

不要禁用 SELinux。那只是自找麻烦。

至于解决问题,我只想引用我自己的话这里:


看来您已经在标准文件系统层次结构之外创建了一个新目录来保存您的 Web 文档。

当您执行此操作时,SELinux 不知道您的自定义目录结构,也不知道 Apache (httpd) 应该有权访问它。/var/log/audit/audit.log在这种情况下,您将看到显示拒绝的消息。

要真正解决问题,您需要告诉 SELinux Apache 可以访问该目录。使用以下方法执行此操作语义上下文命令:

semanage fcontext -a -t httpd_sys_content_t "/volume1/web(/.*)?"

模式匹配是通过正则表达式完成的,因此这将匹配/volume1/web它及其下面的所有内容。它使用正则表达式的事实也意味着您需要如上所示引用它。

然后重新标记文件:

restorecon -r -v /volume1/web

SELinux 现在将允许 Apache 访问/volume1/web.

相关内容