Я пытаюсь запустить запланированную задачу на моем общем сервере Linux с помощью crontab через терминал на моем Mac.
Я могу войти в свой ssh OK и легко просматривать каталоги и т. Д.
Я пытаюсь создать / отредактировать свой crontab, используя ...
crontab -e
Но я получаю ответ
нет crontab для [имя пользователя] - используется пустой
Итак, я пытаюсь добавить свою строку, чтобы настроить мое расписание, а Терминал просто не отвечает.
10 * * * * /home/username/www/myphpfile.php
Есть какие-нибудь подсказки, что я делаю неправильно? Или ссылку на понятное пошаговое руководство?
Я проверил у веб-хостинга, что это поддерживается, это просто недокументировано!
Все, что мне нужно, - это запускать php-скрипт время от времени в течение дня (чтобы проверять наличие обновлений в XML-файле).
Я держу пари, что для переменной $ EDITOR установлено значение vi (m).
Если вы нажмете i
чтобы перейти в интерактивный режим, сможете ли вы войти в свой crontab?
Если это так, после того, как вы закончите ввод своей записи cron, нажмите escape
затем введите :wq<enter>
чтобы сохранить изменения.
Кроме того, изучение vi (m) - хорошая вещь, которую стоит проверить: http://acs.ucsd.edu/info/vi_tutorial.shtml для учебника для начинающих.
попробуйте установить переменную среды EDITOR, например:
EDITOR=nano
export EDITOR
Ваша ошибка в том, что вы вообще не вызываете интерпретатор PHP. Используйте вместо этого:
// Assuming your PHP executable resides under /usr/local/php5/bin
10 * * * * /usr/local/php5/bin/php /home/username/www/myphpfile.php
Удачи.
Похоже, одна из двух возможностей.
1. Есть проблема с cron
2. Проблема с php из командной строки.
Попробуйте выполнить более простую команду, например "Touch" или "Копировать", чтобы убедиться, что cron работает.
Установлен ли на вашем хостинге интерфейс командной строки php? Если да, то, возможно, вам нужно пересмотреть свой код, чтобы использовать CLI эффективно
Надеюсь это поможет