当前位置: 首页 > 知识库问答 >
问题:

Apache无法启动-ServerRoot必须是一个有效的目录,并且无法找到指定的模块

谭飞掣
2023-03-14

我使用xampp便携式服务器,我有一些问题与Apache超文本传输协议服务器,它说"ServerRoot必须是一个有效的目录"

命令行输出:

Please close this command only for Shutdown
Apache 2 is starting ...
httpd.exe: Syntax error on line 35 of K:/../../../xampp/apache/conf/httpd.conf: ServerRoot must be a valid directory

Apache could not be started

我检查了xampp/apache/conf/httpd的第35行。它是:

ServerRoot "/xampp/apache"

不存在的。我的文件夹是:

K:/../../../xampp/apache/conf     <- where the httpd.conf is
K:/../../../xampp/apache/         <- the server root
K:/../../../xampp/apache/modules  <- where server modules are

如果我(在第35行)改为

ServerRoot ".."

它说:

Please close this command only for Shutdown
Apache 2 is starting ...
httpd.exe: Syntax error on line 65 of K:/../../../xampp/apache/conf/httpd.conf: Cannot load modules/mod_access_compat.so into server: Unable to find the specified module

Apache could not be started

我检查了,模块/mod_access_compat.so存在,所以我不知道如何修复它。

任何帮助都将不胜感激

共有3个答案

年风华
2023-03-14

如果您打开编辑器并跳转到错误消息中显示的确切行(在文件httpd.conf中),这就是您将看到的:

#LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule auth_form_module modules/mod_auth_form.so

模块的路径,例如模块/mod_操作。所以,都是相对的,它们都是相对于ServerRoot设置的值ServerRoot在httpd的顶部定义。conf(ctrl-F表示ServerRoot“)。

ServerRoot通常是绝对设置的,即K://../..//xampp/apache/在您的帖子中。

但是它也可以相对于工作目录(参见)进行设置。如果工作目录是Apachebin文件夹,那么在你的httpd.conf中使用这一行:

ServerRoot ../

如果工作目录是Apache文件夹,那么这就足够了:

ServerRoot .

如果工作目录是C:folder(Apache文件夹上方的一个文件夹),则使用以下命令:

ServerRoot Apache

对于apache服务,工作目录将是C:\Windows\System32,因此请使用此目录:

ServerRoot ../../Apache
宋丰
2023-03-14

导航到httpd.confApache24中的conf文件或任何apache文件。

转到ServerRoot=“…”行并将值更改为apache所在的路径,如“C:\Program Files\Apache24”

鱼志学
2023-03-14

只需运行setup_xampp。bat来自shell(shell来自XAMPP控制面板),对于可移植版本的XAMPP for windows,应自动设置路径。这对我很有效。

 类似资料:
  • 我在Ubuntu WSL中使用vscode,它在几个小时前工作正常,当我开始写js时突然停止工作。 我尝试过删除和重新安装vscode,但这不起作用,并且出现错误:当我尝试清除时,出现无法找到包代码。 将vscode远程连接到wsl时,出现如下错误: 以下是来自 wsl 乌班图的调试报告:

  • 目前我在Solr 4.1和Lucene 4.1的结合中遇到了以下问题。 我有这样一个Solr Bean: 现在我想通过HttpSolrServer将bean添加到Solr数据库中。addBean(bean)和我得到以下例外: 但我不明白为什么。我多次为每个setter提供一个以上参数的类,但它没有问题(它甚至是由Eclipse生成的)。 现在的问题是: 我错过了什么?这可能是什么原因?执行架构中缺

  • 我刚刚安装了weblogic server和OSB的新副本。在快速启动屏幕上成功安装weblogic 10.3.6后,我尝试配置域。但是,屏幕没有进一步处理,下面的屏幕截图中出现了错误。 此外,在eclipse中,当我尝试添加服务器时,它会提示我创建一个域,但这也不起作用。我在控制台中遇到的错误是:

  • 我已经尝试了几次运行Apache Nifi服务器,但都不行。我使用的是Windows8,并安装了JavaVersion8。 我会收到以下错误消息: “nifi-env.bat”无法识别为内部或外部命令、可操作程序或批处理文件。 未正确定义JAVA_HOME环境变量。 将使用路径查找java可执行文件。 我尝试了以下类似问题的解决方案,但这没有帮助: windows上的Nifi命令 我也尝试了本视频

  • 我正在运行EMR笔记本中的所有代码。 火花版本 temp_df.print模式 温度df。显示(2) 温度df。写拼花地板(path='s3://project7878/clean\u data/temperatures.parquet',mode='overwrite',partitionBy='year') 火花阅读拼花地板(path='s3://project7878/clean\u dat

  • 规格: 我正在创建PV和PVC使用掌舵图。 我正在使用Rancher UI查看它们是否绑定,以及PV是否生成。 如果我将“hostpath:path:”/mnt/data“作为规范添加到PV中,它将显示为可用的PV(带有本地节点路径),但我的PVC并没有与它绑定。(另外,出于部署目的,我不想使用hostpath。