Cron php not found

Проблема с запуском скрипта через cron

Права на файл cron поставил 777, всё равно не работает.

Подскажите, пожалуйста, как разобраться в сложившийся ситуации.

Ответы (3 шт):

UPD Из комментария.

полный путь к фалу: /var/www/application/controllers/main/cron.php Пробовал как вы писали выше, всё равно такая же ошибка. В файл cron.php должен передавать токен.

*/1 * * * * php /var/www/application/controllers/main/cron.php?token=TOKEN > /tmp/lcron.log 2>&1

Убедитесь, что пользователю, от чьего имени будет работать задание cron, доступен этот файл

*/1 * * * * /usr/bin/wget http://site.ru/main/cron/index?token=TOKEN > /tmp/lcron.log 2>&1

Спасибо! С днем программиста всех!

wget хороший и универсальный вариант, но, справедливости ради, зачастую не единственный.

PHP Fatal error: Class ‘Controller’ not found in /var/www/application/controllers/main/cron.php on line 2

Такие ошибки, как правило, возникают из-за того, что в скрипте, вызываемом через cron, подключаются другие файлы по относительному пути с расчётом на то, что скрипт будет вызываться через запрос к сайту. При запуске такого скрипта через cron относительность пути ломается и нужный файл не подключается. Исправить это можно, если добавить в начало вызываемого скрипта следующий код:

$_SERVER['HTTP_HOST'] = 'имя_сайта'; $_SERVER['REMOTE_ADDR'] = 'IP_адресс'; $_SERVER['REQUEST_METHOD'] = 'GET'; chdir('/var/www/application/www/и/далее/путь/к/папке/скрипта'); 

Источник

команды cron не запускаются, вывод /bin/sh:1:php: не найден

Но внутри /var/www/storage/logs/cron.log я получаю следующее.

Я попытался запустить следующее для справки:

# which php /usr/local/bin/php # whoami root 

Я запускаю cron из образа докера (ОС: Ubuntu) в проекте Laravel.
Я пытался изменить путь разными способами, но все равно выдавал ту же ошибку.
Подобных вопросов было много, но ответа я так и не нашел.

Текущего каталога нет в вашем PATH (и не должно быть). Просто пропустите бесполезную команду cd и вместо нее запустите /usr/local/bin/php .

@ Какой-то программист, чувак Вау, вот так вот сработало. Если вы добавите свой комментарий в качестве ответа, я могу установить его как правильный ответ.

Решение программиста отлично работает. Но в основном можно использовать только команду PHP, но все зависит от установки PHP.

Я оговорился. На самом деле это зависит не от установки PHP, а от наличия «/usr/local/bin» в PATH пользователя, запускающего команду.

2 ответа

Текущий каталог не находится в PATH (и не должно быть).

Просто пропустите бесполезную команду cd и вместо нее запустите /usr/local/bin/php :

0,30 * * * * /usr/local/bin/php /var/www/artisan my_command > /var/www/storage/logs/cron.log 2>&1 

«Текущий каталог не указан в PATH». Нам нужен не текущий каталог в PATH, а каталог /usr/local/bin/. Мне кажется, что это переменная PATH в некоторых установках.

Спасибо @Some программисту, чувак.
Я хотел бы добавить некоторые детали, так как я изначально не мог понять, что он имел в виду.

По сути, когда я вызывал php , cron искал файл в каждой папке внутри PATH , но НЕ в текущем каталоге (если только он не находится внутри PATH ).
Конечно, просто удалить компакт-диск — лучшее решение.
Но чтобы лучше объяснить проблему, другим прекрасно работающим решением было бы следующее:

0,30 * * * * cd /usr/local/bin && ./php /var/www/artisan my_command 

Единственное отличие здесь от команды, которую я использовал изначально, заключается в том, что я указываю использовать текущий путь с ./ .

Источник

Не запускается cron

путь до интерпретатора php верный узнавал через which php
на файле cron.php права 755.
путь верный.
Ноль реакции.

Сервер в связке ngnix+php-fpm
Скачивал apt-get install php5-cli
Запускал опять ноль реакции

Cron
Я бы хотел разобраться как использовать крон.И прошу вас объяснить или хотя бы дать ссылку на.

cron не работает
Пытаюсь запускать php скрипт каждую минуту из cron, но каждую минуту по каким-то причинам он не.

OpenServer и Cron
Попробую объяснить. Есть в отдельном файле php скрипт, нужен запуск php-скриптов с помощью.

Парсер и Cron
Доброго времени суток. Я сделал парсер страницы. Теперь у меня появилось 2 проблемы, которые я не в.

Эксперт PHP

* * * * * /usr/bin/php /home/www/site.domain/htdocs/cron/cron.php

Эксперт PHP

ЦитатаСообщение от maruo Посмотреть сообщение

Эксперт PHP

ЦитатаСообщение от maruo Посмотреть сообщение

Добавлено через 1 минуту
Еще можно вывод игнорить

Добавлено через 1 минуту
И не должно быть прав на выполнение у php файлов — нужно понизить до 644

Jewbacabra, тишина вообще гробовая
напрямую скрипт запускал отрабатывает без ошибок все. а вот крон молчит.
В логах мышь сдохла

Ребят гляньте мб что не так? Проблему не решил, серьездно, я весь инет перелазил, все перечитал не понимаю ошибки

Эксперт PHP

/usr/bin/php /home/www/site.domain/htdocs/cron/cron.php

Jewbacabra, вы имеете ввиду так?
cd /home/www/site.domain/htdocs/cron/
> /usr/bin/php cron.php?

Если да, то запускал так, отрабатывает

Эксперт PHP

ЦитатаСообщение от maruo Посмотреть сообщение

А если запускать без cd, не из папки со скриптом, как я выше писал? От одного и того же пользователя запускается команда из консоли и команда из крона?

Эксперт PHP

Jewbacabra, Пользователь один и тот же.
Работоспособность проверяется логированием работы php скрипта

Так же мб поможет пытался посмотреть эти файлы
/etc/cron.allow && /etc/cron.denny их нету

Тут ошибки появились, когда реешил поставить apt-get install php5-cli , мб в этом проблема?

root@winitem-node-01:/home/userwinitem# apt-get install php5-cli Reading package lists. Done Building dependency tree Reading state information. Done The following packages were automatically installed and are no longer required: libc-ares2 libv8-3.14.5 Use 'apt-get autoremove' to remove them. The following extra packages will be installed: php5-common php5-curl php5-fpm php5-gd php5-intl php5-mysql php5-pgsql php5-readline php5-sqlite php5-xmlrpc php5-xsl Suggested packages: php5-user-cache The following packages will be upgraded: php5-cli php5-common php5-curl php5-fpm php5-gd php5-intl php5-mysql php5-pgsql php5-readline php5-sqlite php5-xmlrpc php5-xsl 12 upgraded, 0 newly installed, 0 to remove and 34 not upgraded. Need to get 5166 kB of archives. After this operation, 10.2 kB of additional disk space will be used. Do you want to continue? [Y/n] y Err http://archive.ubuntu.com/ubuntu/ trusty-security/universe php5-intl amd64 5 .5.9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-mysql amd64 5.5. 9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-readline amd64 5 .5.9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-cli amd64 5.5.9+ dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-xsl amd64 5.5.9+ dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/universe php5-fpm amd64 5. 5.9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-xmlrpc amd64 5.5 .9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-sqlite amd64 5.5 .9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-gd amd64 5.5.9+d fsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-pgsql amd64 5.5. 9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-curl amd64 5.5.9 +dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] Err http://archive.ubuntu.com/ubuntu/ trusty-security/main php5-common amd64 5.5 .9+dfsg-1ubuntu4.19 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/universe/p/php5/php5-in tl_5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-mysql_ 5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-readli ne_5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-cli_5. 5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-xsl_5. 5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/universe/p/php5/php5-fp m_5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-xmlrpc _5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-sqlite _5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-gd_5.5 .9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-pgsql_ 5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-curl_5 .5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/p/php5/php5-common _5.5.9+dfsg-1ubuntu4.19_amd64.deb 404 Not Found [IP: 91.189.88.162 80] E: Unable to fetch some archives, maybe run apt-get update or try with --fix-mis sing?
root@winitem-node-01:/home/userwinitem# whereis php -v php: /usr/bin/php /usr/bin/X11/php /usr/share/php /usr/share/man/man1/php.1.gz Usage: whereis [options] file Options: -f define search scope -b search only binaries -B define binaries lookup path -m search only manual paths -M define man lookup path -s search only sources path -S define sources lookup path -u search from unusual enties -V output version information and exit -h display this help and exit See how to use file and dirs arguments from whereis(1) manual.

Источник

1С-Битрикс. Выполнение всех агентов на cron. Исправляем ошибку PHP Fatal error: Class ‘CEvent’ not found

Давно хотел попробовать перевести выполнение всех агентов с хитов на крон. Даже статья в документации есть. Пришло время. Сел, сделал и забыл (dev-копия сайта позволяет «забывать»). Зашел проверить через несколько дней: выполняются ли агенты — нет 🙂

В логах красовались ошибки:

PHP Fatal error: Class 'CEvent' not found in /path/to/local/php_interface/cron_events.php on line 14 PHP Stack trace: PHP 1. () /path/to/local/php_interface/cron_events.php:0

Если вы видите похожую ошибку, то скорее всего в CLI режиме параметр short_open_tag у вас отключен. Решается просто (при наличии доступа к настройкам PHP).

Идём в файл настроек /etc/php5/cli/php.ini и выставляем short_open_tag в On.

Похожие записи

1С-Битрикс. LazyLoad или ленивая загрузка контента при включенном кешировании

В этой заметке я хочу рассказать о технологии LazyLoad или в простонародье «ленивая загрузка» в Битриксе. Метод, описанный мной, будет точно работать в компонентах catalog.section и news.list.

1C-Битрикс. Кастомизация нового шаблона компонента sale.order.ajax

С выходом нового шаблона компонента sale.order.ajax на форумах битрикса разгораются возмущения и недомения. Мол, теперь код всего шаблона на JavaScript и как его кастомизировать непонятно. На самом деле да, код js-скрипта составляет почти семь тысяч строк. Сходу в таком количестве кода, даже хорошо написанного (к сожалению, битрикс этим не балует), соблюдая паттерны программирования, будет непросто.

В этой заметке я покажу способ, как можно кастомизировать основной скрипт логики шаблона оформления заказа (order_ajax.js), не прибегая к его правке. Что нам это даёт? Когда прилетят очередные обновления шаблона, мы просто заменим его и всё. Все наши кастомизации будут работать (в теории).

1С-Битрикс. Пишем человеческий шаблон многоуровнего меню каталога

Не буду писать про боль при интегации дефотного шаблона. Давайте просто напишем свой, с блекджеком и вот этим всем.

В заметке будет (интересного):

  • построение древовидного массива без рекурсии (неограниченной вложенности)
  • анонимная рекурсивная функция
  • формирование урлов для секций супер-быстрым способом
  • поработаем с сущностями инфоблока через ORM D7

3 комментария

Доступ к файлу настроек php.ini не нужен! Достаточно вызывать php примерно так: /usr/bin/php -d display_errors -d short_open_tag /var/www/bitrix/modules/main/tools/cron_events.php

Спасибо большое! Всю голову сломал, в чем ошибка. Сложно отловить ее. Оч благодарю!

Источник

Читайте также:  Открытие второго окна java
Оцените статью