Я запускаю Ubuntu 16.10 x64 Digital Ocean и развернул php Framework Laravel 5.3.28 на сервере. По большей части все работает нормально, но я пытаюсь заставить crontab вызвать команды ремесленников, например, php artisan schedule:run
так, чтобы планировщик задач laravel мог быть использован.
Я не хочу загружать какие-либо дополнительные пакеты, чтобы сделать эту работу, поскольку я чувствую, что на самом деле не должно быть необходимости, поскольку cron может вызывать, что выглядит, любую команду, если она правильно закодирована.
То, что я пытаюсь сделать:
crontab -e
я пытаюсь правильно написать Ubuntu правильный способ вызова php artisan schedule:run
Что я наделал:
В настоящее время я пробовал несколько разных способов написания этой команды, и ничего не работает, как указано ниже:
#Attempt for cron SHELL=/bin/bash #PATH=????? <---Confused if this is even needed * * * * * php /path/to/artisan scheduled:run 1>> file.log 2>&1 * * * * * /path/to/php artisan scheduled:run 1>> file.log 2>&1 * * * * * /path/to/php artisan scheduled:run >> file.log * * * * * /path/to/php artisan scheduled:run 1>> file.log * * * * * /path/to/php artisan schedule:run * * * * * /path/to/php /path/to/artisan scheduled:run 1>> file.log
Я перешел на несколько ресурсов, чтобы попытаться найти ответ, но ничто не кажется ответом на мою конкретную проблему.
Ресурсы:
https://laracasts.com/series/intermediate-laravel/episodes/2?autoplay=true
http://laravel.io/forum/03-05-2014-automated-mysql-backups?page=1
https://laracasts.com/discuss/channels/laravel/setting-up-larvel-cron
https://community.centminmod.com/threads/how-to-run-a-cron-job-properly.2287/
https://laravel.com/docs/5.3/scheduling
https://laracasts.com/lessons/recurring-tasks-the-laravel-way
https://laracasts.com/index.php/discuss/channels/laravel/laravel-artisan-commands-trough-cron-tab
https://deploybot.com/guides/deploy-a-laravel-app-to-digitalocean
Вывод:
В этот момент я застрял, не застрял. Может кто-нибудь, пожалуйста, помогите мне? Все, что я пытаюсь сделать, это вызвать команду php artisan с помощью cron Ubuntu, и я не знаю, как это сделать. ЛЮБОЙ, и вся помощь приветствуется.
Заранее спасибо,
Счастливых праздников!!
Вот так. Вот как выглядит мой. 🙂
* * * * * php /home/spacemudd/laravel/artisan schedule:run >> /dev/null 2>&1
Некоторые из ваших записей crontab должны работать. Если они, похоже, не работают, следующий вопрос: установлен ли пакет php-cli
? Без этого вы не сможете запускать php-скрипты из командной строки только через веб-сервер. Если вы еще этого не сделали, я бы рекомендовал установить php7.0-cli через:
sudo apt-get update
sudo apt-get install php7.0-cli
Можно было бы сделать так, что при загрузке php7 через sudo apt-get install php7.0-fpm
он загрузил версию, которая будет работать с Laravel 5.3, но не обязательно для заданий cron, вызывающих php-команды с Ubuntu. Это гипотетическое, хотя, я думаю, все еще стоит исследовать.