Магия — это то, что мы не можем или не хотим объяснить.

Недавно решали с одним программистом одну задачу — запуск php скрипта в unix'е по cron'у. И столкнулись с... да-да, магией :)

Скрипт script.php вел себя весьма наглым образом.

  1. Отлично запускается и отрабатывает вот так [http://site.com/script.php]
  2. Отлично запускается и отрабатывает  и вот так (коннект через SSH под user, который не root): [/usr/bin/php /home/domains/www/script.php]
  3. Но из cron'а (запущенного тоже под user) по команде [0-59 * * * */usr/bin/php /home/domains/www/script.php] он не работает (причем непонятно, то ли не запускается, то ли запускается с ошибкой)

Относительные пути прописаны верно. В самом скрипте тоже все пути подключаемых файлов проверены и написаны верно. Но не работает и хоть ты тресни.

Что мы делаем в такой ситуации?

Правильно, подключаем лог и смотрим:

[0-59 * * * */usr/bin/php /home/domains/www/script.php 2>&1 >> /home/domains/www/log.txt]

Ой... что это?! судя по логу скрипт запускается и работает...

Магия? Для меня — да. Наверное, для кого-то -- нет. Десятиминутное гугление не дало ответа на мой вопрос, что это и почему.

Ну что ж... магия, значит, магия. Только вот магические логи мне плодить ни к чему, и поэтому строчка заменяется вот на такую и задача закрывается со статусом «Closed by Magic».

[0-59 * * * */usr/bin/php /home/domains/www/script.php 2>&1 >> /dev/null]

This entry was posted in программирование and tagged , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>