如何使用PHPFog中的系统调用php脚本

问题描述:

我有一个需要在后台运行的php脚本。目前在我的开发箱上我正在运行如何使用PHPFog中的系统调用php脚本

shell_exec("php5-cgi <path>"); 

它工作正常。尽管当我将代码推送到专用的phpfog云中时,似乎该脚本没有被调用。我无法找出问题所在。它是exec_shell不工作或php5-cgi命令不存在。

我该如何更好地理解发生了什么?

+0

我并不熟悉PHPFog,但在[Pagoda Box中,这些被称为工作者](http://help.pagodabox.com/customer/portal/articles/430779)。不要挑战比赛,只是给你我的背景。 – 2012-07-15 23:03:54

+0

什么是'exec_shell'? PHP函数? – 2012-07-15 23:08:34

+2

首先你应该熟悉文档:http://docs.phpfog.com/faqs/#sharedvdedicated – 2012-07-15 23:10:52

你可以尝试从您的EXEC掉话5-cgi

exec_shell("php <path>"); 

此外,你可以使用cron作业本:http://docs.phpfog.com/customize/cron

创建一个cron作业来,对于工作的时间间隔运行<path>你的需求(假设路径是一个PHP文件)。 PHPFog使这非常简单。

如果您正在尝试执行长时间运行的任务,请不要让浏览器等待结果,那么我建议您在数据库表中排队,然后使用cron作业执行处理这些排队任务的php脚本。我将使用来自客户端的ajax调用来检查任务的状态,然后在任务完成时执行页面刷新。

+0

这几乎解决了我的问题。现在只有问题是。当我运行“php ”时,我没有暴露给该脚本的apache环境。 – 2012-07-16 11:03:41

+0

当您使用cron作业界面运行脚本时,您将拥有phpfog环境变量。 – 2012-07-16 16:35:26