Я пытаюсь научиться создавать crontab на удаленном сервере.
Я пытаюсь запускать скрипт каждые 5 минут.
Я использую сервер в компании «IONOS», он находится в Европе.
У меня Mac. Открываю Терминал.
# I go to the server with the authentification. It works well:
ssh userName@serverName
# I open the default editor. That is Vim:
crontab -e
# I edit the file:
i
# I give my email. If the Cron fails:
MAILTO=info@example.com
# Every 5 minutes go to a file where I have a simple script that sends me an e-mail:
*/5 * * * * http://www.example.com/cron-test/1.php
# save and exit the file
:wq
Не работает Cron. Я получил эту ошибку в электронном письме, которое я предоставил:
/bin/sh: 1: https://www.example.com/cron-test/1php: not found
В этом сообщении адрес является ссылкой, и последний ":" включен в эту ссылку. Я не знаю, может ли это быть проблемой?
Конечно, я проверил, что если я перейду на https://www.example.com/cron-test/1php
, он будет работать хорошо и отправляет мне электронное письмо с php.
Имейте в виду, что я новичок в Cron и новичок в Терминале. Я просто учусь и делаю уроки.
Википедия утверждает: «Программная утилита cron - это планировщик заданий на основе времени [..]. Пользователи, которые настраивают и поддерживают программные среды, используют cron для планирования заданий (команд или сценариев оболочки) для run [..]. "
Итак, ваш сервер настроен на запуск команды / сценария каждые 5 секунд с именем:
'http://www.example.com/cron-test/1.php'
Другими словами: где-то в вашем $ PATH должна быть найдена исполняемая команда с указанным выше именем , чтобы "/ bin / sh" мог выполнить эту команду и отправить STOUT на ваш адрес электронной почты.
Вы просто указали URL-адрес, но сервер не знает, что вы хотите с ним делать.
I подумайте, чего вы пытаетесь достичь, можно решить с помощью:
*/5 * * * * /usr/bin/lynx --dump http://www.example.com/cron-test/1.php
Это говорит серверу использовать команду lynx с параметром --dump, чтобы получить содержимое www.example.com/cron-test/1.php и отправить его по электронной почте вам.
(Запустите текстовый браузер Lynx и выгрузите содержимое отображаемой веб-страницы example.com/cron-test/1.php в электронное письмо на указанный выше адрес).