尝试使用以下命令启动 Apache:
/etc/init.d/httpd start
我收到以下错误/var/log/httpd/error_log
:
Unable to change directory to /root
有人知道这是什么意思吗?
答案1
它的 SELinux。
因为您已启用它,所以您需要使用以下方式启动服务
service httpd start
编辑你的 SELinux 配置并禁用它或将其设置为宽容:
纳米/etc/sysconfig/selinux
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
一旦改变,您将能够使用以下命令启动 httpd:
/etc/init.d/httpd start
如果您需要保持 SELinux 启用,那么只需使用服务脚本来启动/停止/重新启动服务。
# service httpd start/stop/restart
答案2
ServerRoot 显然尚未正确设置。
如果未设置,则默认为 $HOME。
编辑 httpd.conf 并设置适当的 ServerRoot(通常是 /etc/httpd 或 /etc/apache2)。
答案3
如果您想在不禁用 SELinux 的情况下运行它,那么请不要尝试在 /root 目录中运行 http start/stop 命令。
这是临时修复但始终有效,只需切换到 /tmp(cd /tmp)并运行命令启动 apache(/etc/init.d/httpd start)