Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用crontab执行Symfony命令_Php_Linux_Symfony_Ubuntu_Cron - Fatal编程技术网

Php 如何使用crontab执行Symfony命令

Php 如何使用crontab执行Symfony命令,php,linux,symfony,ubuntu,cron,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 但它不起作用。我也找不到任何错误消

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

我有一个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示例_项目CRON[23432]:(root)CMD(/usr/bin/php) /home/bob/example_project/bin/console应用程序:slack)

使用
sudo crontab-e-u bob
sudo crontab-e-u www-data
不会改变任何东西

我可能做错了什么

  • 编辑 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\Component\HttpKernel\Kernel->initializeBundles() 2/home/bob/example_project/vendor/symfony/symfony/src/symfony/Bundle/FrameworkBundle/Console/Application.php(68): Symfony\Component\HttpKernel\Kernel->boot() 3/home/bob/example_project/vendor/symfony/symfony/src/symfony/Component/Console/Application.php(120): Symfony\Bundle\FrameworkBundle\Console\Application->doRun(对象(Sy$ 4/home/bob/example_project/bin/console(28):第25行的/home/bob/example_project/app/AppKernel.php中的S


有一个环境问题。这解决了它:

SYMFONY_ENV=prod

* * * * * php /home/bob/example_project/bin/console app:slack
不需要php的完整路径,
/usr/bin/php

如评论中所述,这也适用于:

* * * * * php /home/bob/example_project/bin/console app:slack -e prod

根据您的日志,它似乎正在正确运行。请尝试在命令中进行一些日志记录,以验证一切是否正常运行。可能它在某处遇到错误。还可以尝试将您的电子邮件地址添加到crontab中的MAILTO中,以便接收错误通知。通过管道输出(stdout/stderr)将命令导入一个日志文件
…bin/console-app:slack>>logfile.log 2>&1
我修复了它:
***export-SYMFONY_ENV=prod&&/usr/bin/php/home/bob/example\u-project/bin/console-app:slack
。有没有更好的方法,或者这样好吗?也许,你在
AppKernel.php
中有一个输入错误。我不喜欢这部分“``”Sensio\Bundle\Gene$```您的日志文件。问候。或者只*****php/home/bob/example\u project/bin/console app:slack-e prod