`
freespace
  • 浏览: 180290 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

让 cron 跑在命令行下 (Drupal 7)

阅读更多

Come from:http://www.hdwong.com/article/drupal7-cron-on-cli.html

 

今天在 Drupal 7 下写了个文章采集程序,并且部署成 cron 自动运行,官方的方法 是使用 curl 或者 wget 等 HTTP 请求调用 cron.php,而这样会有可能因为某些意外原因造成错误,如 Web Server 挂了,HTTP Timeout 等,而且也不能即时地输出,通过修改 cron.php,我们可以直接在 crontab 里面用 php 命令行调用了。

if (!isset($_SERVER['REMOTE_ADDR'])) {
  $_SERVER['REMOTE_ADDR'] = '127.0.0.1';
}
if (!isset($_SERVER['REQUEST_METHOD'])) {
  $_SERVER['REQUEST_METHOD'] = 'GET';
}
if (!isset($_SERVER['SERVER_SOFTWARE'])) {
  $_SERVER['SERVER_SOFTWARE'] = 'CLI';
}
if (!isset($_GET['cron_key']) && isset($argv) && isset($argv[1])) {
  $_GET['cron_key'] = $argv[1];
}
 在 cron.php 顶部加入上面地内容,即可以 php cron.php [cron_key] 的命令调用 Drupal cron 了,其中 [cron_key] 是 Drupal 系统的 cron 外部运行所需要的 key,可以在 Status report 里面查到。
分享到:
评论

相关推荐

    gocron - 定时任务系统的配置与运行详解

    * 安装 gocron 和 gocron-node:使用 tar 命令解压缩 gocron 和 gocron-node 的二进制文件,然后将其安装到指定目录下。 四、gocron 的配置和运行 * 配置 gocron:使用 gocron 命令行工具配置 gocron 的设置,包括...

    CronExpression一个cron表达式解析器

    5. **命令行交互**:在命令行环境中,开发者可以结合CronExpression库创建命令行工具,让用户能够方便地配置和管理定时任务。 在`mtdowling-cron-expression-3cc89f5`这个压缩包中,包含了CronExpression库的源代码...

    cron -- windows 下的定时任务程序

    计划任务,是任务在约定的时间执行已经计划好的工作,这是表面的意思。在Linux中,我们经常用到 ...cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业 此版本为windows下的应用。配置格式相同。

    Cron表达式生成器.zip可反向解析

    Cron表达式是一种在Unix和类Unix系统中广泛使用的任务调度工具,用于设置定时任务。它基于特定的时间格式,允许用户定义精确到秒的任务执行计划。Cron表达式的语法复杂,但功能强大,可以实现从每日一次到每分钟一次...

    Linux下操作Cron后台进程.pdf

    在Linux操作系统中,Cron是一个强大的任务调度工具,它允许用户和系统管理员安排定期执行的任务。Cron后台进程持续运行,检查系统中的crontab文件,根据预设的时间间隔执行命令。Cron使得自动化日常维护任务变得简单...

    vue-cron_vue-cron_vuecrond组件_vuecron_

    Cron表达式是一种在各种操作系统中广泛使用的定时任务调度格式,它由7个字段组成,每个字段代表一个时间单位,从左到右分别是秒、分钟、小时、日期、月份中的日期、月份和星期几。每个字段可以设定一个或多个值,如...

    Cron_cron_Cron表达式解析_

    7. **年份**(某些实现包含,但不是所有):在某些版本的Cron中,可以指定年份。 Cron表达式中的星号(*)代表任何可能的值,例如,`* * * * * * *`表示每秒执行一次。逗号(,)用于列举多个值,如`3,5,7 * * * * *...

    C# Cron表达式解析 .net

    C# Cron表达式解析在.NET开发中是一种常见且重要的任务,尤其在自动化任务调度和计划程序的场景下。Cron表达式源于Unix操作系统,用于定义周期性任务的执行时间。在C#中,通过理解并解析Cron表达式,开发者可以创建...

    cron中英文表达式

    在JavaScript中,我们可以利用类似cron的表达式来实现定时任务,例如通过`jquery-cron`库。这个库提供了一个用户友好的界面,帮助开发者在Web应用中创建和管理cron表达式。 cron表达式由5-6个(或者7个,如果包含...

    Cron表达式Html源码

    通过这个压缩包文件中的"Cron表达式Html源码",我们可以学习如何在Web环境下构建类似的工具,包括前端的用户交互逻辑、后端的Cron解析算法,以及整个系统的架构设计。这对于理解和实践Web应用开发,尤其是与时间相关...

    win Cron定时任务

    在Windows操作系统中,虽然默认没有内置像Linux系统中名为Cron的定时任务调度器,但可以通过其他方式实现类似的功能。Windows的任务计划程序(Task Scheduler)就是一种常用的替代方案,可以用来创建定期执行的任务...

    Cron 命令详解

    查看、编辑和删除 cron 把命令行保存在 crontab(cron table)文件里,这个文件通常在 /etc 目录下。每个系统用户都可以有自己的 crontab(在 /var/spool/cron/ 下)。要查看当前用户的 crontab,输入 crontab -l;...

    js cron 表达式生成器

    `cron`表达式由6或7个字段组成,每个字段代表不同的时间单位:秒、分、小时、日、月中的日、月和年(在某些实现中)。这些字段用空格分隔,并且每个字段的值可以是固定的数字、范围、列表或者通配符(*),以表示...

    cron(动态生成cron表达式)

    在这个场景中,我们讨论的是一个基于Vue的Cron表达式组件,它允许用户在前端界面中动态生成和配置cron表达式。Vue.js是一个流行的轻量级前端框架,而JavaScript则是Web开发中的主要脚本语言。 这个组件的安装过程...

    cron表达式自动生成

    在Linux环境中,cron表达式是由7个字段组成的字符串,每个字段代表不同的时间单位:秒(0-59)、分钟(0-59)、小时(0-23)、日期(1-31)、月份中的日期(1-12)、月份(1-12)以及星期(0-7,其中0和7都代表周日...

    Cron前端生成工具

    这种表达式的语法可能对初学者来说较为复杂,因此,Cron前端生成工具通过友好的图形界面,让用户可以通过简单的交互来设定任务执行时间。 该工具通常包括以下功能: 1. **时间选择器**:用户可以通过直观的下拉...

    计划任务Cron表达式生成

    Cron表达式是由6或7个由空格分隔的字段组成的字符串,每个字段代表不同的时间单位,从左到右依次为秒(可选)、分钟、小时、日期、月份中的日期、月份和星期中的日期。例如,"0 3 * * * ?"表示每天凌晨3点0分执行...

    layui第三方组件cron的使用

    7. **自定义cron选项** `cron.render()`方法支持多种配置项,如禁用某些选项、设定默认值等。例如,禁用秒级选择: ```javascript cron.render({ elem: '#cronDemo', disableSecond: true }); ``` 8. **...

    Cron表达式生成器html源码

    Cron表达式是一种在计算机程序中广泛使用的定时任务调度工具,尤其在Java的Quartz框架中,它扮演着核心角色。Cron表达式允许我们用一种简洁的方式定义一系列的时间计划,比如每天的某个时间点执行某项任务。下面将...

    vixie-cron-4.1.rar_centos-s002_crontab source code_vixie-cron_vi

    《vixie-cron-4.1:CentOS下的crontab定时任务源代码解析》 在Linux系统中,crontab是用于设置周期性被执行的任务的工具,它源自著名的Unix系统工具cron。Vixie-cron是cron的一个实现版本,由Paul Vixie开发,广泛...

Global site tag (gtag.js) - Google Analytics