我必须运行PHP脚本作为一个服务。它也应该在启动时运行(当系统崩溃/重启发生时)。我尝试了一个一年运行一次的cron作业。一旦cron触发了该进程,我就在运行该进程时将其注释掉。但是在系统重启后进程停止了。
我也试过了,但在关闭终端进程后停止了。我也不确定它是否会在启动时运行?下面是我的php脚本。
<?php
while (true) {
$command = "php $cwd'artisan synchronizedb --ptype=2";
exec($command);
}
?>
FreeBSD有一个非常好的工具叫做daemon,你可以创建一个简单的脚本,像这样
#!/bin/sh
echo "starting XYZ"
daemon -r /path/to/your/script
-r
选项,监视并重新启动程序,如果它已被终止。
以后你会有一些选择
将脚本添加到rc。在本地编辑
/etc/rc.local
文件创建一个只在重启时运行的cron:
@reboot root /path/to/your/script
把你的脚本放在
/usr/local/etc/rc.d
只是chmod+x
cron @reboot
可能是最简单的。