在 CentOS v7 上启动 Apache 时命令 AssignUserId 无效

在 CentOS v7 上启动 Apache 时命令 AssignUserId 无效

我对 Linux 还很陌生。我正在关注本文

基本上,我想为我的一个 WordPress 网站创建一个 VirtualHost。这个服务器是全新的,运行的是 CentOS。

我已经完成yum install httpd-itk并且安装顺利。

但是,一旦我将该AssignUserId vhost-user vhost-user-group文件添加.conf到我的网站,我就会得到以下信息:

httpd 宕机

我里面有的是.conf这个:

NameVirtualHost nativeleaf.co.uk

<VirtualHost nativeleaf.co.uk>
DocumentRoot /var/www/nativeleaf.co.uk/public
ServerName nativeleaf.co.uk
AssignUserId vhost-user vhost-user-group
</VirtualHost>

我无法启动httpd。为什么会发生这种情况?我该如何解决?

更新

我不确定是否应该为此创建一个新问题,但请参阅 Andrew 的回答。在他的帮助下,我设法加载了模块,并摆脱了那个错误,但现在又面临另一个错误。

错误的用户名

如您所见,错误表明 vhost-user 是一个错误的名称!如前所述,我正在按照教程操作,并且这是所使用的用户,我应该用其他名称来更改它吗?教程中没有提到这一点。

答案1

由于 mod_mpm_itk 定义了该AssignUserId指令,我猜你还没有在 Apache 配置中加载该模块。确保配置包含该指令

LoadModule mpm_itk_module modules/mpm_itk.so

正如错误消息所示,“可能由服务器配置中未包含的模块定义。”请参阅文档加载模块

在您的AssignUserId指令中,您应该用主机上定义的用户和组的名称来替换 和vhost-uservhost-user-group例如,您可以nativeleaf在主机上创建一个用户并将其添加到apache组中:

sudo useradd -g apache nativeleaf

那么如果你的指令是

AssignUserId nativeleaf apache

那么 nativeleaf.co.uk 网站的 Web 代码将全部以用户身份运行nativeleaf(在组中),因此在某种程度上与在其他虚拟主机中apache以用户身份运行的代码区分开来。apache

相关内容