Задания CRON не запускаются автоматически

#1 8 октября 2016 в 13:59
Всем привет, имею сервачок на Debian8,
5.6.20-0+deb8u1
Веб сервер Apache
Mysql сервер 5.5.49
Операционная система Linux 3.16.0-4-amd64

Если зайти в админку в планировщик, то там есть несколько заданий, как ни зайду, последний запуск у каждого стоит тогда, когда я запускал это задание вручную
Подскажите как сделать так чтобы планировщик сам выполнял задание, отчего это зависит? Где регулируется? Подозрения на операционную систему CRON это ведь демон по идее? Я сам-то в Лнукс неочень
#2 8 октября 2016 в 14:22
У меня в начале нужно указать версию php какую запускать
/usr/bin/php5.5 -f /.../.../.../public_html/cron.php > /dev/null
#3 8 октября 2016 в 14:27


У меня в начале нужно указать версию php какую запускать
/usr/bin/php5.5 -f /.../.../.../public_html/cron.php > /dev/null

rector
ммм не понял немного это в командной строке надо набрать только с моиоми путями или нужно зайти в файл cron.php и подправить?
#4 10 октября 2016 в 05:45

Подозрения на операционную систему CRON это ведь демон по идее? Я сам-то в Лнукс неочень

IceBreaker
На хостинге есть панель управления? Тогда добавляйте задачу CRON иначе ничено не будет работать, выше собеседник Вам привел пример добавления команды.
#5 11 октября 2016 в 09:27

Всем привет, имею сервачок на Debian8

IceBreaker
kirkr, У меня свой комп
#6 11 октября 2016 в 09:49
IceBreaker,
Тогда гуглите и через консоль добавляйте crontab -e задачи крон


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

* * * * * /usr/bin/php /home/user/script.php

Распишем подробней что же означают звездочки:
(цифры — это номера звездочек)
1. Минуты (0 — 59)
2. Часы (0 — 23)
3. День месяца (0 — 31)
4. Месяц (1 -12)
5. День недели (0 — 6, 0 — воскресенье)

Вот с помощью этих звездочек мы указываем когда запускать команду (или как часто запускать). Например если вместо номера месяца стоит звездочка, значит команда будет запускаться каждый месяц. Если поставить звездочку на место минут, это будет означать каждую минуту и аналогично для остальных.
Например, нам надо, что бы shell скрипт запускался каждый день в 12.00 и 24.00, тогда запись в крон файл требуется добавить следующую:

0 0,12 * * * /path/to/shell-script.sh

значит
0 — это минуты
0,12 — мы точно указываем часы, в которые надо запускать
* * * — означает что запускать надо каждый день, каждый месяц, каждую неделю.
А вот если нам надо запускать скрипт каждый два часа, тогда можно воспользоваться двумя вариантами:

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /path/to/shell-script.sh

#7 11 октября 2016 в 09:49
Пробуйте такие варианты:
  1.  
  2.  
  3. /usr/bin/php /Путь_до крон/cron.php >/dev/null 2>&1 <-У меня рабочий этот
  4.  
  5. /usr/bin/php -f /Путь_до крон/cron.php > /dev/null
  6.  
  7. /usr/bin/php /Путь_до крон/cron.php
  8.  
  9. @daily php -f /Путь_до крон/cron.php http://имя_домена/cron.php >/dev/null 2>&1
  10.  
  11. php -q /Путь_до крон/cron.php
  12.  
  13. php -f /Путь_до крон/cron.php
  14.  
  15. curl "http://имя_домена/cron.php"
  16.  
  17. wget http://имя_домена/cron.php > /dev/null &2>&1
  18.  
  19. wget -O - -q http://имя_домена/cron.php > /dev/null &2>&1
  20.  
  21. wget -O - -q -t 1 http://имя_домена/cron.php
  22.  
  23.  
#8 15 октября 2016 в 00:51
Вобщем дописал в crontab задание вида:
  1. * * * * * /usr/bin/php /var/www/sites/site/cron.php >/dev/null 2>&1
Задания срабатывают, всё нормально.
Получается крон в операционке смотрит список своих заданий и выполняет каждую минуту скрипт, который лежит в корне сайта
Не знаю правильно это или нет, мне казалось сам какбы сайт как-то должен взаимодействовать с кроном, то есть я создал задание в админке а оно само попало в кронтаб или еще как-то передалось. Хотел узнать, все ли добавляют строку крон вручную в кронтаб?
На хостингах такая же петрушка? Я просто не ставил раньше движки готовые, которые с кроном работают. Или на хостингах уже крон знает что скрипт лежит в корне и на него уже настроен на выполнение каждую минуту к примеру?
#9 15 октября 2016 в 04:44

Хотел узнать, все ли добавляют строку крон вручную в кронтаб?

IceBreaker
Все, ибо при установке ВЫДЕЛЕНО КРУПНО, не забудьте добюавить задачу в КРОН.

Даже у крупных платных CMS вручную добавляешь задание. Ибо на хостингах ограничения
#10 17 июня 2017 в 13:32
Ребят, на будущее, если на вашем сервере/хостинге php собран без cli, то cron.php в вашем случае запускаться не будет!
В вашем случае запускать cron.php через wget, который в свою должен быть установлен на сервере.
#11 17 июня 2017 в 14:35
Ребят, вы бы хоть поиском на сайте пользовались, что ли. То, что обсуждали здесь на форуме, было описано в этой статье еще в 2014 году… Прямо слово в слово. В том числе и про cli.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.