Ошибка запуска Cron
Прислано: oos_s
ср, 12/11/2008 - 12:33
Коллеги, через 1,5 мес. после запуска сайта перестал запускаться крон :(
В отчете о состоянии выдается "Ошибка запуска Cron". Установил автозапуск у хостера... на почту приходят логи: "PHP Fatal error: Call to undefined function: drupal_bootstrap() in /home/public_html/cron.php on line 11"
Файлы не модифицировались.
Друпал 6-й.
Хостинг: Apache/2.0.58 (Unix) mod_ssl/2.0.58 OpenSSL/0.9.8d mod_dp/lk.0.20.0 PHP/5.2.6 Памяти 128 Мб.
Поискал на drupal.org, есть похожие проблемы под 5-ку, но ответов нет. Подскажите, в чем может быть проблема?
- oos_s's blog
- Для комментирования войдите или зарегистрируйтесь
Начнем операцию по удалению.
Судя по всему вы запускаете напрямую "/home/public_html/cron.php"
В папке scripts есть шел-скрипты для запуска крона.
Сделайте вызов одного из этих скриптов.
Они открывают cron.php через веб-сервер, не напрямую и он (cron.php) получает правильные пути и правильно инклюдит все нужные файлы.
Выбор скрипта зависит от того, что есть у хостера wget или lynx.
Проверить это можно так:
# which wget # which lynx
Вы должны увидеть путь к скрипту, если он установлен.
- Для комментирования войдите или зарегистрируйтесь
Спасибо за отклик!
Инструкция из панели хостера:
"Время, интервал
Минуты могут быть от 0 до 59
Часы могут быть от 0 до 23
День месяца может быть от 1 до 31
Месяц может быть 1 до 12
День недели может быть от 0 до 7 (0 или 7 - воскресенье)
Можно конфигурировать CRONTAB для выполнения задач не только в определенное время, но и ежеминутно, ежечасно, ежедневно, еженедельно или ежемесячно, используя комбинацию */x
Пример:
*/5 * * * * - запускать команду каждые пять минут
0 */3 * * * - запускать каждые три часа
0 12,13,14 * * * - запускать команду каждый час с 12 до 14
Команда
Необходимо задать путь до скрипта от домашнего каталога
Например: public_html/cgi-bin/script.pl
Cистема сама подставит символ ~/ (эта комбинация заменяет полный путь)
Получится: ~/public_html/cgi-bin/script.pl
Если в конце пути поставить символ &, то скрипт будет работать в фоновом режиме. Установка этого символа необязательна.
Вот примеры правильной записи в CRONTAB:
* * * * * ~/public_html/cgi-bin/script.pl - запускать программу script.pl каждую минуту
0 0 * * * ~/public_html/cgi-bin/script.pl - запускать программу script.pl в полночь каждый день
Права на файл должны быть 705. CGI-скрипт должен располагаться в папке CGI-BIN. Первая строка в файле должна выглядеть так: #!/usr/bin/perl - это путь к интерпретатору.
Как запустить PHP-скрипт?
Задайте в PHP-файле путь к интерпретатору: #!/usr/local/bin/php (первая строка в файле). Установите на файл права 705.
Вот пример правильной записи:
0 0 * * 1 ~/public_html/myscripts/somescript.php - запускать программу somescript.php в ночь с воскресения на понедельник"
Соответственно я прописываю: 0 0 * * 1 ~/public_html/cron.php
Права назначил, в файл cron.php дописал #!/usr/local/bin/php
В логах "PHP Fatal error: Call to undefined function: drupal_bootstrap() in /home/public_html/cron.php on line 11"
Непонятно откуда ошибка :( Хостер говорит - обращайтесь к разработчикам цмс
- Для комментирования войдите или зарегистрируйтесь
http://drupalcookbook.ru/recept/zapusk-hronometra-cron
- Для комментирования войдите или зарегистрируйтесь
Да читал я это все... От этого не легче... Вообще стараюсь спрашивать, когда не в состоянии найти информацию самостоятельно
- Для комментирования войдите или зарегистрируйтесь
Я уже ответил на ваш вопрос.
А решать ваши проблемы должны вы сами.
Кроме того, я достаточно подробно описать способы запуска в статье Запуск хронометра (cron), которую упомянул Dan.
- Для комментирования войдите или зарегистрируйтесь
Непонятно откуда ошибка :( Хостер говорит - обращайтесь к разработчикам цмс
А почему вы тогда не пишете Дрису Байтаерту?
Он является самым что главным разработчиком цмс!!!
- Для комментирования войдите или зарегистрируйтесь
Всем спасибо за ответы в любом случае... не понятно с чего агрессия? Я вроде очень вежливо задал вопрос ...
- Для комментирования войдите или зарегистрируйтесь
А вы мне не ответили.
- Для комментирования войдите или зарегистрируйтесь
oos_s,
у меня такая же панель управления. ты разобрался с кроном?
- Для комментирования войдите или зарегистрируйтесь
Здравствуйте! Проблема та же, cron при запуске выдает сообщение всегда, Ошибка запуска Cron. ясно вполне что он слетает из-за какого-то модуля, вопрос как отловить этот модуль?
на странице: http://anyks.com/admin/reports/status всегда висит сообщение:
Выполнение регулярных процедур (задачи cron) Последний запуск 3 недели 8 часов назад
Крон давно не запускался. Подробная информация находится в документации по настройке, на странице настройки работы крона. Вы можете запустить выполнение регулярных процедур (cron) вручную.
пробовал отловить модуль как написано здесь: http://www.drupal.ru/node/9732
но так и не въехал где должна появится новая категория "cron_runs" в журнале, ниче там не появилось...
- Для комментирования войдите или зарегистрируйтесь
Проблема та же, cron при запуске выдает сообщение всегда, Ошибка запуска Cron.
Как запускаете хрон? Вручную или cron на сервере? На локале хрон запускается?
Отключайте модули по паре штук и смотрите когда заработает.
но так и не въехал где должна появится новая категория "cron_runs" в журнале, ниче там не появилось...
Либо ошиблись, ли хрон у вас не доходит до обработки хуков.
- Для комментирования войдите или зарегистрируйтесь
насчет логов, оказывается хостер не дает к ним доступ и сказал что не даст, только писать ему время он выдаст на это время какие записи в логах идут...
Крон запускается в ручную только есть набрать: http://my_site.com/cron.php если запускать из админки то выдает ошибку.
вот что сказал хостер:
Здравствуйте.
Что бы иметь к данному файлу доступ, Вам нужен root доступ, котроый никто не предоставит, ниже скинули лог
---
[Mon Nov 16 10:24:04 2009] [error] [client 92.55.39.59] client denied by server configuration: /home/anyksco/public_html/cron.php
[Mon Nov 16 10:24:04 2009] [error] [client 92.55.39.59] client denied by server configuration: /home/anyksco/public_html/cron.php
----
Как говорится нифига не в тему! Крон в основном не работает из-за модуля проверки наличия обновлений, примечательно что данная система на локальном компьютере работает без проблем и крон и обновления а на хостинге нет, может памяти на php не хватает хотя там выделили 64Мб в остальном больше незнаю что еще может быть
- Для комментирования войдите или зарегистрируйтесь
насчет логов, оказывается хостер не дает к ним доступ и сказал что не даст, только писать ему время он выдаст на это время какие записи в логах идут...
В логах друпала надо смотреть (это я про http://www.drupal.ru/node/9732), а не веб-сервера.
[Mon Nov 16 10:24:04 2009] [error] [client 92.55.39.59] client denied by server configuration: /home/anyksco/public_html/cron.php
При чём тут /home/anyksco/public_html/cron.php? Крон должен дёргаться через http, а не напрямую.
может памяти на php не хватает хотя там выделили 64Мб
Может не хватать времени.
- Для комментирования войдите или зарегистрируйтесь
Я читал эту статью, где эти логи друпала? я не нашел...
на странице: admin/settings/logging/syslog только настройки а где сами логи хранятся понятия не имею уже все обыскал
если запустить крон как: http://my_site.com/cron.php он запускается а если из админки то выдает ошибку...
- Для комментирования войдите или зарегистрируйтесь
VladSavitsky же написал...
Судя по всему вы запускаете напрямую "/home/public_html/cron.php"
смотрим...
Соответственно я прописываю: 0 0 * * 1 ~/public_html/cron.php
так оно и есть! БИНГО! это в корне неверно.
Владислав, профессионально поставил диагноз и даже написал как нужно лечить. А ты рецепт проигнорировал и пытаешься на него как-то наезжать.
Перечитай еще раз его пост, или переспроси, если что в совете непонятно. Я думаю, он ответит. )
- Для комментирования войдите или зарегистрируйтесь
если запустить крон как: http://my_site.com/cron.php он запускается а если из админки то выдает ошибку...
Как Вы это поняли? Обновляется время последнего запуска на странице /admin/reports/status?
Я читал эту статью, где эти логи друпала? я не нашел...
/admin/reports/dblog
Должен быть включен модуль "Database logging".
- Для комментирования войдите или зарегистрируйтесь
Я не наезжал я просто не понял ответа, в /admin/reports/status там время последнего запуска стоит еще с середины октября
Про Database logging я не знал, сейчас включу и посмотрю что будет
- Для комментирования войдите или зарегистрируйтесь
Спасибо! теперь понятно где эта статистика, что я и спрашивал...
- Для комментирования войдите или зарегистрируйтесь
В журнале записывается
«Попытка перезапуска выполнения регулярных процедур (cron) в то время, как они уже выполняются.»
и cron уже второй день не может запустится...
есть мнения?
- Для комментирования войдите или зарегистрируйтесь
Есть. Поиск.
- Для комментирования войдите или зарегистрируйтесь
В журнале записывается
«Попытка перезапуска выполнения регулярных процедур (cron) в то время, как они уже выполняются.»
и cron уже второй день не может запустится...
есть мнения?
нужно убить переменную "cron_semaphore".
либо редактором переменных из модуля devel
либо в ручную в таблице drup_variable удалить строчку от этой переменной.
на самом деле странный глюк.
- Для комментирования войдите или зарегистрируйтесь
нужно убить переменную "cron_semaphore".
Что-то я не нашел эту переменную в таблице *_variable, она что появляется только когда cron начинает глючить?
- Для комментирования войдите или зарегистрируйтесь
Да, эта переменная означает, что хрон глючит :)
- Для комментирования войдите или зарегистрируйтесь
В журнале записывается
«Попытка перезапуска выполнения регулярных процедур (cron) в то время, как они уже выполняются.»
и cron уже второй день не может запустится...
есть мнения?
Мне помогло отключение XML SiteMap 2 dev. Подвешивал.
- Для комментирования войдите или зарегистрируйтесь
.
- Для комментирования войдите или зарегистрируйтесь
помогло отключение poormancron.
- Для комментирования войдите или зарегистрируйтесь
нужно убить переменную "cron_semaphore".
либо редактором переменных из модуля devel
либо в ручную в таблице drup_variable удалить строчку от этой переменной.
на самом деле странный глюк.
спасибо огромное, это было спасением
- Для комментирования войдите или зарегистрируйтесь








Комментарии