будет ли это cronjob работать?

#php #cron

#php #cron

Вопрос:

я пытаюсь настроить cronjob для запуска PHP-файла. я просто хочу знать, правильно ли я это делаю или нет.

допустим, php находится в http://mysite.com/myscript/cronjob.php , и я хочу, чтобы он запускался каждые 3 часа.

я очень новичок в cronjobs, поэтому прошу прощения, если кажется, что я понятия не имею, что я делаю.

 Minute  Hour    Day     Month   Weekday     Command

*   */3     *   *   *   http://mysite.com/myscript/cronjob.php
  

я хочу, чтобы этот PHP-скрипт запускался каждые 3 часа. будет ли это работать или мне нужно использовать другую команду?

Комментарии:

1. Вам нужно использовать команды, понятные вашей системе. И в Интернете есть много хороших руководств по crontab. Google, пока не найдете тот, который говорит на вашем языке.

Ответ №1:

Нет, это не сработает. URL-адрес не является исполняемым файлом, это просто URL-адрес.

Вы могли бы wget http://mysite.com/myscript/cronjob.php указать для своей команды, но это действительно то, что вы хотите?

Лучший способ (если скрипт находится на локальном сервере) — вызвать PHP напрямую:

php /var/www/myscript/cronjob.php

Ответ №2:

Почти, это должно сделать это

 * */3 * * * wget -q -o /dev/null http://mysite.com/myscript/cronjob.php
  

или с помощью curl

 * */3 * * * curl -s -o /dev/null http://mysite.com/myscript/cronjob.php
  

-s / -q отключит вывод, а -o перенаправит вывод скриптов в /dev/null

Ответ №3:

В дополнение к тому, что другие говорили о невозможности указать URL-адрес для запроса:

Я нашел несколько ссылок в Интернете, которые предупреждают

A. ) Повторяющийся шаблон, такой как /2 каждые 2 минуты или /10 каждые 10 минут, поддерживается не всеми операционными системами. Если вы попытаетесь использовать его, и crontab пожалуется, что он, вероятно, не поддерживается.

Однако, если предположить, что поддерживаются повторяющиеся шаблоны, это должно сработать.

Таким образом, более переносимым способом было бы сделать:

 *   0,3,9,12,15,18,21     *   *   *   php /var/www/myscript/cronjob.php
  

Комментарии:

1. Ваш cron извлекает URL-адреса для вас?

2. @Brad err нет, это не так. Не видел этого 🙂