BAE3.0中实现定时访问URL

自从BAE升级为3.0后,很多同学都不知道原来的计划任务该怎么弄,就是定时通过get或post方式访问某URL来执行php等。正巧我的某app从SAE搬家过来也需要这个功能,然后配置了好久app.conf文件就是行不通,问度娘也没找到一个可行的方法,今天鼓捣了好久终于可以了~
原理就是通过shell脚本的curl间接的执行php文件。。

实现方法:

首先配置app.conf文件

crond:

service : on

crontab :

– “* 1-12 * * * sh /home/bae/app/do.sh”
(注意在app.conf中的项目要对齐,否则会发布失败!)
然后新建个do.sh文件

内容如下:
curl -o /dev/null -s -w %{http_code} http://test.duapp.com/do.php >> /home/bae/log/do.log
上面的命令可以采集页面的状态码。如果这条命令返回结果为200,说明服务正常。如果返回的是其他的页面,说明异常。
【注】curl是一个命令行下的http下载工具,类似wget。与wget相似,它也可以通过发送指定的http header到服务器来判断服务的状态。
-o 参数,是把下载的所有内容都重定向到/dev/null,-s命令,是屏蔽了curl本身的输出,而-w参数,是根据我们自己的需要,自定义了curl的输出格式。
这样系统会在每天的1-12点之间每隔1分钟执行一次do.php文件了,而且会将日志输入到do.log中

2 条评论

[/0o0] [..^v^..] [0_0] [T.T] [=3-❤] [❤.❤] [^v^] [-.0] [!- -] [=x=] [→_→] [><] 更多 »
昵称
  1. 金木研 QQbrowser QQbrowser Android 4.0.4 Android 4.0.4

    抢板凳!

  2. 鸽子 鸽咩咩 Google Chrome 35 Google Chrome 35 Windows 7 Windows 7

    抢沙发!