Как вызвать скрипт php, используя систему в PHPFog
У меня есть PHP-скрипт, который должен работать в фоновом режиме. В настоящее время на моем Dev Box я бегу
shell_exec("php5-cgi <path>");
Работает нормально. Хотя, когда я помещаю свой код в выделенное облако phpfog, кажется, что скрипт не вызывается. Я не могу выяснить, где проблема. Это то, что exec_shell не работает или команда php5-cgi не существует.
Как я могу лучше понять, что происходит?
1 ответ
Вы можете попробовать сбросить 5-cgi
из вашего exec вызова:
exec_shell("php <path>");
Кроме того, вы можете использовать для этого задание cron: http://docs.phpfog.com/customize/cron
Создать задание cron для запуска <path>
на интервале, который работает для ваших нужд (при условии, что путь - это файл php). PHPFog делает это очень легко.
Если вы пытаетесь выполнить долгосрочную задачу, а не заставлять браузер ждать результата, я рекомендую ставить в очередь в таблице базы данных, а затем использовать задание cron для выполнения сценария php, который обрабатывает эти поставленные в очередь задачи. Я бы использовал ajax-вызовы от клиента, чтобы проверить состояние задачи, а затем выполнить обновление страницы после ее завершения.