繁体   English   中英

在 windows 上找到 Apache 服务器的路径

[英]Locate the path of an Apache server on windows

对于我正在编写的 Windows 脚本,我需要检测机器是否安装了 Apache 2.2,并找到应用程序路径。

我想出的一种解决方案是 wget http://localhost:8080/server-info并从中解析根和配置文件。 如果服务器不使用端口 8080,这将失败

另一种选择是调用“sc qc Apache2.2”并解析返回的字符串。 如果服务器没有安装为服务,或者使用不同的名称,这将失败。

有没有更好的方法来做到这一点?

如果他们没有使用安装程序安装它,就没有很多好的选择。 如果他们使用 MSI/安装程序,您可以检查注册表:

HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Apache\2.2.2\ServerRoot 
HKEY_CURRENT_USER\SOFTWARE\Apache Software Foundation\Apache\2.2.2\ServerRoot

您还可以查看正在运行的进程列表:

WMIC PROCESS get Caption,Commandline,Processid

寻找合适的 EXE。 如果由于某种原因您需要端口号,则使用 netstat 并搜索适当的端口。

此外,当您说“Windows 脚本”时,我假设您使用的是现代且功能强大的东西,例如Windows Scripting Host (我最喜欢的)或PowerShell 甚至不要打扰批处理文件。

我记得,Apache 编写了一些注册表项。 如果您知道如何从脚本中读取它们,那可能会有所帮助。

桌面

无法在服务器上找到路径。

尝试将 index.php 放在帮助台安装的站点 url 之后,或者如果您使用的是 apache,请确保启用了 mode_rewrite 模块并将文档根目录的 AllowOverride 指令设置为服务器配置文件中的 All/FileInfo。 [enter code here][1]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM