参数文件中的 Mutex 目录无效:${APACHE_LOCK_DIR}

参数文件中的 Mutex 目录无效:${APACHE_LOCK_DIR}

当我从命令行运行 apache2(运行命令而不是服务)时,我得到了以下信息:

[Thu Mar 13 12:18:05.594522 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_LOCK_DIR} is not defined
[Thu Mar 13 12:18:05.594732 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_PID_FILE} is not defined
[Thu Mar 13 12:18:05.594807 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_RUN_USER} is not defined
[Thu Mar 13 12:18:05.594867 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_RUN_GROUP} is not defined
[Thu Mar 13 12:18:05.594934 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Thu Mar 13 12:18:05.617353 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Thu Mar 13 12:18:05.617809 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Thu Mar 13 12:18:05.617895 2014] [core:warn] [pid 9268] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf:
Invalid Mutex directory in argument file:${APACHE_LOCK_DIR}

第 74 行是:

Mutex file:${APACHE_LOCK_DIR} default

我已经将 Xubuntu 从 13.04 更新到 13.10,它有 Apache/2.4.6

答案1

我认为您应该使用,sudo /etc/init.d/apache2因为默认调用bin不起作用。

详情如下:

在加载的测试页面上,它显示“配置系统在 /usr/share/doc/apache2/README.Debian.gz 中完整记录。” -> 该文件中写道“由于使用了环境变量,apache2 需要使用 '/etc/init.d/apache2'、apachectl 或 apache2ctl 来启动/停止。直接调用 '/usr/bin/apache2' 将无法使用默认配置。”

在我的计算机上apache2ctl restart apachectl restart显示Could not reliably determine the server's fully qualified domain name ....,但是/etc/init.d/apache2 restart运行时没有任何问题。

答案2

这是意料之中的,因为 apache2 需要在其环境中设置一些变量。因此,运行 apache2 的正确方法是使用常规服务控制脚本(service 或 systemctl)或 apache2ctl(apachectl)。

答案3

您应该能够使用服务命令启动 apache:

service apache2 start

请参阅同样的问题和更详细的答案https://lists.debian.org/debian-apache/2013/08/msg00053.html

相关内容