2014-02-21 218 views
1

我想在Google App Engine中安排一个cron作业。Google App Engine Cron PHP

我有一个网址,我想打电话,这是工作。

我不是cron知识丰富的工作,但是我想运行的文件的开发人员提供了我要运行的命令行。

我阅读了Google App Engine PHP cron作业文档,并且了解了调度部分。从文档的示例中,我将使用路径“/ backup”。但是,我不知道如何编写文件来输入命令。

这是对文档的链接:https://developers.google.com/appengine/docs/php/config/cron

调度部(我明白这一点):

文件cron.yaml

cron: 
- description: weekly backup 
    url: /backup 
    schedule: every monday 05:00 
    timezone: America/Los_Angeles 

cron命令行(如果这是被称为)是:

curl -b /tmp/cookies.txt -c /tmp/cookies.txt -L --max-redirs 1000 -v "http://somedomain.com/index.php?option=someoption&view=someview&key=somekey" 

通知我打电话的网址,的URL不是在GAE

我使用GAE PHP SDK

会在哪里我写的cron命令?

这段代码的文件扩展名是什么?

+2

您的“开发人员”不知道应用引擎是什么。他希望curl命令可以在某个随机的unix服务器上运行;它不能直接在应用引擎上运行。 – geoffspear

+0

所以你给我一个反问的问题? – IberoMedia

回答

1

你的cron将会致电每周一备用网址凌晨5点

cron: 
- description: weekly backup 
    url: /backup 
    schedule: every monday 05:00 
    timezone: America/Los_Angeles 

创建一个PHP的处理程序,并使用相同的逻辑备份处理程序中提供了开发人员。

因此,在5日凌晨的cron运行 - >请求/backup - >卷发你想要的网址或任何

编辑

我忘了,GAE不支持卷曲。如果可能,请使用urlfetch。关于这件事,请看wrappersthis nice answer

+0

谢谢吉米,但我认为GAE不支持cURL。我得到错误“致命错误:调用未定义的函数curl_init()在第15行/base/data/home/apps/my-app/1.34523456456456/somefile.php”,并且我来自GAE的fetchUrl文档:https:/ /developers.google.com/appengine/docs/php/urlfetch/ – IberoMedia

+0

@IberoMedia查看更新后的答案 –

+0

我将cRUL脚本放在外部服务器上,并安排使用urlfetch从GAE调用它,谢谢 – IberoMedia