【发布时间】:2013-07-30 21:52:37
【问题描述】:
我之前在这里看到过这个问题,所以我很抱歉重复了,但我仍然没有找到我的问题的答案。
我有一个 bash 脚本需要一段时间才能运行。它需要传递用户在网页上设置的变量(不用担心会有大量的安全验证等)
我可以让 bash 文件启动,但它可能会在 20 秒后从网页运行时死掉。
从终端运行时.. 运行得很好。
好的,我有以下内容:
$bashFile = shell_exec('./CoinCreationBashFile.sh "'.$coinName.'" "'.$coinNameAbreviation.'" "'.$blockReward.'" "'.$blockSpacing.'" "'.$targetTimespan.'" "'.$totalCoins.'" "'.$firstBitAddy.'" "'.$seedNode.'" "'.$seedName.'" "'.$headline.'" ');
现在这会执行 bash 文件,但我阅读了有关 Shell_exec php with nohup 的信息并得出以下结论:
$bashFile = shell_exec('nohup ./CoinCreationBashFile.sh "'.$coinName.'" "'.$coinNameAbreviation.'" "'.$blockReward.'" "'.$blockSpacing.'" "'.$targetTimespan.'" "'.$totalCoins.'" "'.$firstBitAddy.'" "'.$seedNode.'" "'.$seedName.'" "'.$headline.'" >/dev/null 2>&1 &');
但这很快就死了:(
因此,请阅读有关 set_time_limit 和 max_execution_time 的信息,并在 php.ini 文件中将它们设置为 10000000 之类的......但仍然没有乐趣 :(
只想运行一个 bash 脚本而不会超时和退出。真的不想在其中放置一个中间步骤,但有人建议我查看 ZeroMQ 以“将工作人员与进程分离”,所以我可能不得不走这条路。
提前多谢
【问题讨论】:
标签: php bash exec shell-exec