2013-08-30 2 views
0

У меня есть требование, чтобы конечный пользователь планировал задачу, и веб-приложение должно запускаться в запланированное время и дату.Запуск запланированного задания в Codeigniter

Я нахожусь на общем хостинге в среде linux. Я использовал Cron для очень простых почтовых рассылок. Но в этом случае мне пришлось настроить cron из cpanel на хостинге.

В соответствии с текущими требованиями мне нужно, чтобы конечные пользователи планировали задания с веб-сайта frm переднего конца, и приложение не знает заранее о расписании. Мне нужно сделать это, используя CI MVC.

Могу ли я использовать cron, и если да, то как мне настроить задание cron через CI-контроллер?

Любая помощь приветствуется.

+0

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

ответ

0

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

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

+0

Я предполагаю, что псевдо-cron не будет работать для моего случая, поскольку для выполнения задания должен быть триггер, основанный на часах. EasyCron - жизнеспособный вариант, единственное, что меня беспокоит, что мой URL-адрес работы будет общедоступным и может быть любым, если он получит доступ. Положить веб-интерфейс для создания/редактирования заданий cron является наиболее подходящим вариантом, если он обеспечивает безопасность. – aeonsleo

+0

Вы можете ограничить доступ к URL-адресу задания с помощью .htaccess, чтобы обеспечить его запуск только с помощью EasyCron. .htaccess может запрещать запросы на основе IP-адреса или имени домена –

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