【问题标题】:Laravel schedule command with cron带有 cron 的 Laravel 调度命令
【发布时间】:2016-07-10 00:28:38
【问题描述】:

我有命令log:demo,我从 ssh 控制台成功运行它,命令为:php artisan log:demo

现在我需要创建 cron 作业并且可以,但是当 cron 启动命令时,我会进入 laravel.log:

> [2016-03-22 21:45:01] local.ERROR: exception 'ErrorException' with message 'Invalid argument supplied for foreach()' in /home/agroagro/public_html/vendor/symfony/console/Input/ArgvInput.php:283
Stack trace:
#0 /home/agroagro/public_html/vendor/symfony/console/Input/ArgvInput.php(283): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(2, 'Invalid argumen...', '/home/agroagro/...', 283, Array)
#1 /home/agroagro/public_html/vendor/symfony/console/Application.php(790): Symfony\Component\Console\Input\ArgvInput->hasParameterOption(Array)
#2 /home/agroagro/public_html/vendor/symfony/console/Application.php(117): Symfony\Component\Console\Application->configureIO(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#3 /home/agroagro/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(107): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#4 /home/agroagro/public_html/artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#5 {main}  

为什么手动调用命令有效,而 cron 却不行?

【问题讨论】:

  • cron 是否为手动执行的同一用户运行?这是一个很长的镜头,但您可以尝试通过设置 register_argc_argv = on 的自定义 .ini 文件并运行像 php -c /path/custom.ini ... 这样的 cron 作业

标签: php laravel cron command


【解决方案1】:

cron 是否使用与您相同的用户和权限运行? bash 是一样的吗?检查php版本...

那是我服务器上的问题...

【讨论】:

    猜你喜欢
    • 2015-08-09
    • 2019-09-02
    • 2019-10-31
    • 2017-02-04
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    • 2020-11-06
    • 2018-12-23
    相关资源
    最近更新 更多