Подтвердить что ты не робот

Лучший способ периодически выполнять PHP скрипт?

Я бы, вероятно, нашел способ сделать это, если бы у меня был полный доступ к серверу, однако проблема в том, что это просто услуга хостинга, которая оставляет мне ничего, кроме FTP-доступа.

Я хотел бы периодически запускать PHP script, чтобы проверить устаревшее/сломанное содержимое, заполнить новый контент, удалить файлы, которые не используются и т.д., однако script может принимать до 60 секунд выполнить (из-за агрегирования контента), и я чувствую себя как задница, чтобы просто выполнить ее при обработке запроса первого пользователя, который посещает веб-сайт через час после его обновления: P

Выход моего домашнего ПК в 24/7 для планирования запросов не является вариантом.

4b9b3361

Ответ 1

Вы можете использовать онлайн-службу cron, чтобы по существу притворяться, будто у вас есть доступ к cron.

Создайте файл php с содержимым, которое вы хотите выполнить

Бесплатный веб-сайт Cron

Настройте бесплатный онлайн-cron для выполнения этого файла каждые x минут.

Ответ 2

Не уверен, что это правильный подход, но я просто запускал script, когда первый пользователь посещает сайт, а затем отправляет <meta http-equiv="refresh"... пользователю, чтобы его браузер обновил страницу. Оригинальный PHP скрипт все равно будет работать на сервере, но пользователь больше его не увидит.

В принципе, что-то вроде:

if( check if the user is the first visitor today ) {
    set_time_limit(0);
    echo "<meta http-equiv='refresh' content='1;url=..." />"; // put your site baseurl in here

    ... run your scripts here
}

Просто идея. Не может работать. Просто попробуйте.

Ответ 4

Почему бы вам не использовать

crontab

Взгляните сюда:

http://en.wikipedia.org/wiki/Cron

Ответ 5

Если ваш хостинг-провайдер не дает вам ничего, кроме FTP-доступа, и вы не хотите планировать периодический запрос с другого компьютера, тогда вы ничего не можете сделать. Вам нужно будет получить лучшую учетную запись хостинга, предпочтительно такую, которая позволит вам использовать cron.