如何使用crontab执行Symfony命令

时间:2017-04-10 13:24:24

标签: php linux symfony ubuntu cron

我发现了两个类似的问题,但没有得到他们的帮助。

我输入的Symfony命令正在运行:

/usr/bin/php /home/bob/example_project/bin/console app:slack

我尝试使用sudo crontab -e创建一个crontab(每分钟运行一次):

MAILTO=""

* * * * * /usr/bin/php /home/bob/example_project/bin/console app:slack

但它不起作用。我也找不到任何错误消息。 sudo grep CRON /var/log/syslog给出:

  

Apr 10 13:21:01 example_project CRON [23432] :( root)CMD(/ usr / bin / php   / home / bob / example_project / bin / console app:slack)

使用sudo crontab -e -u bobsudo crontab -e -u www-data不会改变任何内容。

我可能做错了什么?

  • EDIT logfile.log包含:
  

PHP致命错误:未捕获   Symfony \ Component \ Debug \ Exception \ ClassNotFoundException:试图   从名称空间“Sensio \ Bundle \ Gene $”加载类“SensioGeneratorBundle”   您是否忘记了另一个命名空间的“use”语句?在   /home/bob/example_project/app/AppKernel.php:25堆栈跟踪:   0 /home/bob/example_project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(403):   AppKernel-> registerBundles()   1 /home/bob/example_project/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(113):   的Symfony \组件\ HttpKernel \内核级> initializeBundles()   2 /home/bob/example_project/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php(68):   的Symfony \组件\ HttpKernel \内核级>引导()   3 /home/bob/example_project/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php(120):   的Symfony \捆绑\ FrameworkBundle \控制台\应用 - > doRun(对象(SY $   4 / home / bob / example_project / bin / console(28):第25行/home/bob/example_project/app/AppKernel.php中的S

1 个答案:

答案 0 :(得分:2)

存在环境问题。这修好了它:

node -v 6.10.2
npm -v 3.10.10

没有必要使用php的完整路径,SYMFONY_ENV=prod * * * * * php /home/bob/example_project/bin/console app:slack

如评论中所述,这也有效:

/usr/bin/php