Проблема с работой Cron (расписание задач) в Laravel

Та же проблема с расписанием работы cron,

мой kernal.php

<?php

namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Log;

use Illuminate\Foundation\Console\Kernel as ConsoleKernel;

class Kernel extends ConsoleKernel
{

    protected $commands = [
      //  \App\Console\Commands\SecondTable::class,
    ];


    protected function schedule(Schedule $schedule)
    {
        // $schedule->command('inspire')
                  //->hourly();
        $schedule->call('App\Http\Controllers\Sale\SaleController@sync')->everyMinute();
    }

    protected function commands()
    {
        require base_path('routes/console.php');
    }
}

запуск вручную команды-> php artisan schedule: run работает хорошо!

но сервер запуска cronjob работает неправильно, мой код задания cron,

* * * * * php /laravel project folder/artisan schedule:run >> /dev/null 2>&1

не работает.

Что вы подразумеваете под "той же проблемой"? Что вы пытались отладить проблему?

Nico Haase 19.06.2019 15:52

Извините, у меня проблема с этим кодом. Не работает расписание задач в Laravel 5.4

Gowtham B 20.06.2019 06:50

извините, моя версия Laravel 5.6.4

Gowtham B 20.06.2019 09:30
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
1
3
1 355
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проверьте свой код cronjob, он может быть примерно таким:

* * * * * cd path-to-your-project && php artisan schedule:run >> /dev/null 2>&1

Это означает: каждые секунды (* * * * *) переходить в папку моего проекта (cd path-to-your-project), затем выполнять команду (php artisan schedule:run).

Значение последней части cronjob объясняется здесь: Что такое /dev/null 2>&1?

Я запустил команду на сервере, например, i.ibb.co/6tMzgZR/error.png, но теперь она работает. (Ларавел 5.4)

Gowtham B 20.06.2019 07:05

извините, моя версия Laravel 5.6.4

Gowtham B 20.06.2019 09:30

Вы должны ввести «php» перед «artisan» в своем задании cron (он отсутствует в изображении, на которое вы ссылаетесь). Вы можете увидеть это в моем ответе.

Stefano 20.06.2019 11:49

Чтобы запустить ваш cronjob в оболочке во время тестирования, вы должны удалить * * * * *, потому что он зарезервирован для crontab

Stefano 20.06.2019 11:55

я установил путь crontab на сервере. Затем запустите папку /usr/bin/php7.0 /mnt/hosting/dev/projects/artisan schedule:run >> /dev/null 2>&1 вручную запустите, работает хорошо. но создайте файл оболочки на сервере. запустите 5-минутное задание cron. не работает не знаю проблема.

Gowtham B 20.06.2019 12:10

Можете ли вы скопировать и вставить сюда свой crontab (проверьте его, набрав crontab -e в вашей оболочке)?

Stefano 20.06.2019 12:24

Спасибо за предоставленные предложения, /usr/bin/php7.0 /mnt/hosting/dev/projects путь к папке/artisan schedule:run >> /dev/null 2>&1 этот код работает хорошо. любая ссылка, stackoverflow.com/questions/43699948/…

Gowtham B 20.06.2019 13:47

Другие вопросы по теме