Мне нужно настроить следующий URL-адрес для выполнения через каждые 5 минут через cronjob.Как выполнить ссылку php через задание cron
http://test.com/app/collect-results.php?interval=15
Может кто-то пожалуйста, помогите мне в этом
Благодарности
Мне нужно настроить следующий URL-адрес для выполнения через каждые 5 минут через cronjob.Как выполнить ссылку php через задание cron
http://test.com/app/collect-results.php?interval=15
Может кто-то пожалуйста, помогите мне в этом
Благодарности
Чтобы запустить 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
рабочих мест зависят от Пар конфигурации сервера, иногда вы на самом деле не имеют доступа к тем или веб-хостеров не хотят, чтобы дать вам доступ. Тем не менее, я применяю эту меру в течение многих лет:
В базе данных вашего сайта создайте таблицу для 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);
или что бы вы ни использовали.
В следующий раз, когда пользователь откроет ваш сайт, даже если сценарий еще не выполнен, это будет, если запланированная дата больше или равна текущему времени.
Надеюсь, что это поможет и дает вам идею :) Не забудьте принять или проголосовать, если это было полезно.
Это полностью зависит от настройки вашего сервера - вы работаете в Linux, Windows и т. Д.?? – danmullen
@ danmullen формулировка cornjob не windows (: – donald123
Да @ donald123, я знаю об этом. Но, учитывая недостаточную осведомленность автора о «заданиях cron», вполне возможно, что он мог означать «запланированное задание» или что-то подобное. – danmullen