在 Windows 中重新启动 Apache 的 Perl 脚本

在 Windows 中重新启动 Apache 的 Perl 脚本

这就是我从 Perl 脚本中重新启动 Apache 所需要的全部操作吗?

system("C:\\Apache24\\bin\\httpd.exe -k restart");

我尝试验证这是否真的重新启动了 Apache,但找不到我的 Apache 日志文件。在 Windows 任务管理器的服务标签下查看,Apache 服务没有获得更新的 PID 编号。我还检查了是否可以在 Windows 计算机管理 > 系统工具 > 事件查看器 > Windows 日志选项卡中看到任何活动,以查找任何可以提示 Apache 是否确实重新启动的内容,但没有找到任何活动。现在我不确定此代码是否有效。

我想我可以做一个

system("C:\\Apache24\\bin\\httpd.exe -k stop");

看看这是否会杀死 Apache......


更新: 我尝试在 cmd 窗口中停止它,但

(OS 5)访问被拒绝。:AH10014:无法打开“Apache2.4”服务

... 我发现我没有在提升的管理员权限下运行:命令提示符窗口。因此,Perl 脚本可能也没有权限执行该命令。

答案1

该 Perl 脚本的工作原理如下:

system("C:\\Apache24\\bin\\httpd.exe -k restart");

但只有以管理/提升的权限执行时才有效。

相关内容