При установке cron возможны множество ошибок — одну из которых «Cannot open input file» — мы сейчас изучим.
Подобная ошибка часто возникает при попытке установить задачу Cron в следующем виде:
php /home/user/webroot/parser.php?t=items
Причина тому, что при работе с консоли указание GET-параметров в привычном нам виде есть неправильным. Т.е. консольный вызов считает всю строку — названием файла, в т.ч. с спец. знаками, вроде «?».
Поэтому нужно изменить команду на примерно вот такой вид:
php /home/user/webroot/parser.php items
В таком случае внутри скрипта данных в переменной GET уже не будет и их следует получить с массива $argv в порядке их передачи. Более детально об этом описано в другой моей статье.