zoukankan      html  css  js  c++  java
  • linux crontab+curl+php 实现php定时任务

    首先登入Linux -》用root登入

    在命令行输入

    crontab -e 

    之后就会打开一个文件,并且是非编辑状态,则是vi的编辑界面,通过敲键盘上的i,进入编辑模式,就可以编辑内容。这个文件中的每一行就是一个定时任务,我们新建一行,就是新建一条定时任务(当然是指这一行内按照一定的格式进行书写)。我们现在来举个例子,增加一行,内容如下:

    00 * * * * lynx -dump https://www.yourdomain.com/script.php

    这是什么意思呢?实际上上面这一行由两部分组成,前面一部分是时间,后面一部分是操作内容。

     如图所示

    整个句子的后面部分就是操作的具体内容。

    lynx -dump https://www.yourdomain.com/script.php

    00 */2 * * *  curl -i  http://www.yourdomain.com/script.php

    意思就是说通过lynx访问这个url。我们在使用中主要用到lynx、curl、wget来实现对url的远程访问,而如果要提高效率,直接用php去执行本地php文件是最佳选择,例如:

    00 */2 * * * /usr/local/bin/php /home/www/script.php

    这条语句就可以在每2小时的0分钟,通过linux内部php环境执行script.php,注意,这里可不是通过url访问,通过服务器环境来执行哦,而是直接执行,因为绕过了服务器环境,所以效率当然要高很多。

    好了,已经添加了几条需要的定时任务了吧。点击键盘上的Esc键,输入“:wq”回车,这样就保存了设置的定时任务,屏幕上也能看到提示创建了新的定时任务。接下来就是好好写你的script.php了。

    关于CronTab的更多用法这里就不介绍了,如果你想更灵活的使用这个定时任务功能,应该自己再去深入学习一下crontab。

    ref:每天一个linux命令(50):crontab命令

    ref:PHP实现执行定时任务的几种思路详解

    ref:curl命令详解

  • 相关阅读:
    Android调用WebService
    webKit和chromium的文章地址
    关注web前端
    第三次面向对象程序设计作业
    第二次面向对象程序设计作业
    面向对象程序作业一
    HashMap的存储原理
    关于MySql中使用IFNULL()函数失效的问题。
    利用反射操作bean的属性和方法
    几种String对象方法的区别
  • 原文地址:https://www.cnblogs.com/stuart/p/5305162.html
Copyright © 2011-2022 走看看