我在 PHP 中创建了一个简单的 xmpp bot,它连接到 google talk 服务器。我基本上修改了 cli_longrun 示例。当我在浏览器中运行脚本时,即使我关闭了正在运行脚本的选项卡,机器人也会在线并保持在线一段时间(因为它只是一个无限循环,用于监听流上的事件)。但一段时间后,机器人会脱机。
问题是如何让机器人始终在线。我能想到的一种方法是运行一个 cron 来断开之前的 cron 并开始一个新会话。但是有更好的方法吗?
我在 PHP 中创建了一个简单的 xmpp bot,它连接到 google talk 服务器。我基本上修改了 cli_longrun 示例。当我在浏览器中运行脚本时,即使我关闭了正在运行脚本的选项卡,机器人也会在线并保持在线一段时间(因为它只是一个无限循环,用于监听流上的事件)。但一段时间后,机器人会脱机。
问题是如何让机器人始终在线。我能想到的一种方法是运行一个 cron 来断开之前的 cron 并开始一个新会话。但是有更好的方法吗?
如果您被允许 cron 访问,也可能会在您的 crontab 中使用“@reboot sleep 300;./runbot.sh”的 crontab 条目重新生成脚本。
从命令行运行它,只要脚本没有中断,只要提示打开,它就会一直运行。
如果这是在共享主机上,他们很可能已经采取措施防止脚本永远运行,即使你有 set_time_limit(0) - 所以你可能不走运。
从命令行运行它并确保您的脚本没有结束。确保你set_time_limit为 0 以防止它自杀。