如何使用php设置crontab?
我需要从php脚本中设置一个crontab。我知道它可以由如何使用php设置crontab?,php,unix,cron,crontab,Php,Unix,Cron,Crontab,我需要从php脚本中设置一个crontab。我知道它可以由 system(“echo'***echo\'Hello world\'>>cron.crontab”); 系统(“crontab cron.crontab”)//cron.crontab是crontab的文件名 “cron.crontab”文件已在根目录中创建,但crontab未按预期工作!当我尝试下面的命令时,它说没有设置crontab crontab-l 我想我错过了什么。我正在使用yii框架。yii框架中是否有处理cron的扩展?
system(“echo'***echo\'Hello world\'>>cron.crontab”);
系统(“crontab cron.crontab”)//cron.crontab是crontab的文件名
“cron.crontab”文件已在根目录中创建,但crontab未按预期工作!当我尝试下面的命令时,它说没有设置crontab
crontab-l
我想我错过了什么。我正在使用yii框架。yii框架中是否有处理cron的扩展?还有别的办法吗?请帮帮我。谢谢。您通常必须是root用户才能设置crontab,这与php以root用户身份运行不同,在这种情况下,您运气不佳
编辑:并非完全出于运气。请参阅上面Sebastian评论中的链接。您是否以web服务器运行的用户身份运行
crontab-l
?否则,您将看不到它的cronjobs。Apache通常无法使用主crontab。但是,每个用户都有一个crontab,很可能上面的代码正在设置apache
的crontab(或者站点运行时的任何用户的crontab)
试试
crontab-u apache-l
,或者用站点运行时的任何用户替换apache
,看看您设置的条目是否存在。可能的重复不是完全重复。这个问题涉及到来自已接受答案的代码,看起来不起作用。这些问题略有不同,但这个问题的答案是linked.PHP中已接受答案的最后一句。PHP作为服务器上的用户运行…作为用户,它可能有一个crontab,可以为自己设置。但是这些作业将以网站/服务器的用户身份运行,用户可能有足够的权限完成作业,也可能没有足够的权限完成作业。没错。谢谢你的澄清。