duanguanye4124 2014-05-10 09:01
浏览 30
已采纳

PHP背景cron工作

A script has an execution time of more than a minute. So, therefore I would like to run the script as a background task.

I've read a lot about it on the internet and read that print shell_exec('/usr/bin/php -q page.php &'); isn't the solution since the taks is still a child of the process. I've tested it with sleep(10) and indeed, the page which should call the cron job is waiting for 10 seconds.

So, symcbean have written an article ( http://symcbean.blogspot.nl/2010/02/php-and-long-running-processes.html?m=1 ) and is suggesting the following code:

print `echo /usr/bin/php -q longThing.php | at now`;

But, unfortunately, i script didn't do anything and after adding 2>&1 I get the following response:

sh: at: command not found

I've search a lot for solving this issue, but can't find any solution.

  • 写回答

1条回答 默认 最新

  • dpii73380 2014-05-10 09:05
    关注

    You should provide the fully qualified path to the at command for example /bin/at.

    If you're not sure of the path you can usually type which at at the command line to find the path to the command.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解