Cron работа, кажется, истекает время - PullRequest
0 голосов
/ 04 июня 2009

Установите следующий cronjob в crontab root: (centos 5.x)

2 * * * * /usr/bin/curl --basic --user 'user:pass' http://localhost/cron/do_some_action > /var/www/app/cronlog.log

Вызов действительной команды работает, как и ожидалось, однако, когда выполняется cronjob, он всегда истекает. Я использовал set_time_limit() и соответствующие настройки php.ini, чтобы убедиться, что PHP не умирает, и / var / log / cron выглядит для меня нормально:

4 июня 10:02:01 foobar crond [12138]: (root) CMD ([snip])

Есть какие-нибудь идеи о том, почему уродец умрет?

Ответы [ 4 ]

1 голос
/ 05 июня 2009

Я понял - статистика прогресса керла:

(100 65622    0 65622    0     0   1039      0 --:--:--  0:01:03 --:--:--  1927)

почему-то записывалось в stderr - добавление 2> & 1 в конце команды исправляло это:

2 * * * * /usr/bin/curl --basic --user 'user:pass' http://localhost/cron/do_some_action > /var/www/app/cronlog.log 2>&1

Спасибо всем за понимание!

1 голос
/ 04 июня 2009

добавить пользователя

02 * * * * root / usr / bin / curl --basic --user 'user: pass' http://localhost/not/porn> /var/www/app/filethatrootcanwriteto.log

0 голосов
/ 04 августа 2009

Этого также можно избежать, если буферизировать вывод PHP с помощью ob_start () и ob_end_flush (), чтобы предотвратить преждевременный возврат состояния curl.

0 голосов
/ 04 июня 2009

Может быть 2 файла php.ini, один для apache и один для CLI.

найдите php.ini должен найти оба, я бы посоветовал вам сначала проверить там.

...