2014-10-21 5 views
-2

Мне нужно настроить следующий URL-адрес для выполнения через каждые 5 минут через cronjob.Как выполнить ссылку php через задание cron

http://test.com/app/collect-results.php?interval=15

Может кто-то пожалуйста, помогите мне в этом

Благодарности

+0

Это полностью зависит от настройки вашего сервера - вы работаете в Linux, Windows и т. Д.?? – danmullen

+1

@ danmullen формулировка cornjob не windows (: – donald123

+0

Да @ donald123, я знаю об этом. Но, учитывая недостаточную осведомленность автора о «заданиях cron», вполне возможно, что он мог означать «запланированное задание» или что-то подобное. – danmullen

ответ

5

Чтобы запустить URL с хрон, вам нужна программа, чтобы получить этот адрес. В PHP можно использовать либо wget, либо curl.

Вы можете использовать cURL, как показано ниже.

*/5 * * * * curl http://test.com/app/collect-results.php?interval=15 

С wget установите хрон как

*/5 * * * * wget http://test.com/app/collect-results.php?interval=15 
0

рабочих мест зависят от Пар конфигурации сервера, иногда вы на самом деле не имеют доступа к тем или веб-хостеров не хотят, чтобы дать вам доступ. Тем не менее, я применяю эту меру в течение многих лет:

В базе данных вашего сайта создайте таблицу для chronjobs, которую вы хотите запланировать. Вы должны иметь chronjob (файл для запуска - пример some_chron.php), lastExecutionDate, nextExecutionDate.

Затем создайте файл php (скажем, chronjobs.php), где вы получите содержимое только что созданной таблицы и протестируете, если пришло время выполнить конкретный chronjob или нет.

if ($row['nextExecutionDate'] >= $today) { include(row['chronjob']); }

Затем обновите lastExecutionDate и nextExecutionDate соответственно. Добавьте ваш файл chronjobs.php на каждую страницу (или там, где вы хотите, чтобы она была запущена). Вы, конечно же, закрываете сессию базы данных в каждом файле, поэтому убедитесь, что вы положили ее до $db = null; или mysql_close($link); или что бы вы ни использовали.

В следующий раз, когда пользователь откроет ваш сайт, даже если сценарий еще не выполнен, это будет, если запланированная дата больше или равна текущему времени.

Надеюсь, что это поможет и дает вам идею :) Не забудьте принять или проголосовать, если это было полезно.

Смежные вопросы