2016-11-29 2 views
0

У моего сервера много фотографий. Я хотел бы архивировать (.zip) эти фотографии и загружать их с сервера. Я создал PHP-скрипт, чтобы сделать архив этих фотографий в .zip-файл и загрузить его.

Если я выполняю этот файл непосредственно через браузер, он получает ошибку тайм-аута. Поэтому я создал задание CRON для выполнения сценария. Но мне нужно только выполнить работу CRON, когда мне это нужно. (Как нажимать кнопку, чтобы выполнить скрипт).

Спасибо за помощь!Команда CRON-выполнения Выполнение через PHP-скрипт

+1

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

+0

Какова ваша команда для кроны? Пожалуйста, добавьте команду здесь. –

+0

php /XXX/XXX/public_html/cli.php/cron_v2/index - 0 1 * * * это будет работать. На самом деле мне нужно вызвать файл всякий раз, когда я нажимаю любую кнопку. Спасибо. – sathivel

ответ

1

См. Функцию set_time_limit, чтобы предотвратить вашу ошибку таймаута.

http://php.net/manual/en/function.set-time-limit.php

Что касается запуска хрон по мере необходимости, то есть не так, как хрон работает. Команда cron выполняет команду с заданным интервалом. Сценарий PHP может включать код для немедленного выхода, если его обработка не требуется. Вам нужно будет создать какой-то способ передать сценарий, если ему нужно запустить или нет. Это можно сделать, обновив файл или базу данных.

В качестве альтернативы вы можете использовать сервер приложений для выполнения команд (скриптов) по мере необходимости через вызовы веб-службы. PHP не имеет хорошей поддержки многопоточности, которая необходима для большинства серверов приложений, поэтому вам, скорее всего, придется использовать Java, Python или Ruby для создания веб-сервисов для запуска сценариев по мере необходимости в режиме реального времени. Затем вы можете вызвать эти веб-службы с PHP с помощью функций cURL.

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