是否可以从 PHP 开始/停止 apache 服务?

Is it possible to start / stop apache service from PHP?

我创建了一个简单的网站,通过为我承担的每个新网站项目创建一个子域,它可以帮助我完成许多项目。

我一直回到我创建的旧网站,所以我决定将它们全部保留为本地主机上的子域。

我的 PHP 代码可以很好地将信息添加到相关文件中。

但我需要重新启动 Apache 才能使更改生效。 我知道 PHP 从 Apache 服务运行。因此是否可以从 PHP 代码停止和启动甚至重新启动 Apache 服务?

是的,exec()

exec("apachectl restart");

您可能希望允许程序在关闭服务器之前自行关闭,因此我建议:

exec("apachectl graceful");

确保 PHP 在 safemode (<= PHP 5.3) 中不 运行,因为那时这些功能将不可用。

请注意,这是我在服务器上重新启动 apache 的方式,您可能需要调整命令。

还要考虑权限。并非所有用户(可能不是 运行ning php 脚本)都有权停止服务器。