php重启apache服务

这里有个矛盾的地方,就是 php是作为Apache的一个模块来运行的,所以一旦重启Apache,在Apache停掉的时候,php调用的shell命令就不会继续执行了;也就是说,只能关闭Apache,不能启动Apache。

我想到的办法就是将命令交给其他程序去运行,于是就想到了at命令。man at只看到at -f [file] now从文件读取,但是我就一个命令,不想再生成一个文件,然后就想到了管道,试一下,成功了。

echo 'sudo service httpd restart' | at now

注:at命令,apache用户需要有登录权限(/etc/passwd)

<time datetime="2013-11-03">2013-11-03 修改</time>

不知为何用apache去启动的服务,在apache服务退出的时候会接管apache的端口

标签: none

添加新评论