GOOGLE ADS

воскресенье, 24 апреля 2022 г.

Невозможно запустить команду artisan через cron на локальном хосте [Laravel 8] [решено]

Я новичок в laravel и crontab. У меня есть проект laravel 8, и я хочу использовать cron для запуска запланированной задачи. Но я продолжаю получать ошибку. Задача, которую я поставил на вкладке cron, выглядит так:

* * * * * /usr/local/bin/php /home/mydirectory/path/to/project/artisan schedule:run >> /tmp/laravel.log

Но при его выполнении журнал выдает следующую ошибку.

Could not open input file: /home/mydirectory/path/to/project/artisan

Я попытался запустить задачу в терминале/командной строке, и она выполняется просто отлично. Странно то, что я смог запустить задание cron для моего предыдущего проекта laravel (хотя задание задания cron было удалено), но не для этого проекта. Я также использую chmod 755.

Я действительно запутался, что с этим не так:( Кстати, я использую macos и laravel 8.83. Спасибо за вашу помощь!


Решение проблемы

Основываясь на документации Laravel, вам нужно сначала изменить текущий каталог на корень проекта, а затем использовать команду, которую вы хотите запустить с помощью artisan.

https://laravel.com/docs/9.x/scheduling#running-the-scheduler

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

Комментариев нет:

Отправить комментарий

Laravel Datatable addColumn returns ID of one record only

Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...