本帖最后由 BLDPD 于 2022-8-21 01:27 编辑
我的环境是 REDCap 12.5.6 · PHP 7.4.30 (Linux/Unix OS) · MySQL 5.7.37
服务器系统是乌班图20.4
经过测试,PHP8.0+的版本会直接在安装时候cronjob提示崩溃(PHP原因)。
经过降级PHP到7.4,安装时候cronjob不会直接报错,但是会提示计划任务未运行。
如下:
错误:计划任务未运行
你的REDCap似乎没有设置计划任务或者没有按恰当的运行周期运行。请参阅控制中心里的计划任务页面进行细节设置。此计划任务相当重要并且必须常规运行在一个指定周期以保证后台任务被执行。
转至计划任务页面
点击转至页面提示:
设置REDCap的计划任务REDCap要求计划任务必须在REDCap服务器上设置,因为web服务器每天自始至终都会以一个固定周期执行计划任务。计划任务程序可以执行任何必要的任务并作为异步的后台进程运行。下面的步骤将指导你完成计划任务的设置以及处理可能出现的错误: 诊断核查
当前服务器类型(Windows或Linux/Unix): Linux/Unix
最后一次计划任务运行时间是: 2022/08/20 23:06
计划任务状态 没有正常运行 (计划任务在过去一小时没有运行。请检查。)
如何使用Crontab安排Linux/Unix的REDCap计划任务
打开Telnet/SSH 任务在Linux/Unix服务器上,把文本框里的文字加到CronTab文件(使用“crontab -e” 打开rontab文件进行编辑)。如果你在启动“crontab -e ”收到拒绝访问的提示,你需要切换到系统管理员身份(例如 “sudo crontab -e”)。 如果要列出当前计划任务,请使用“crontab -l”。
注意: 不能确定PHP可执行文件在服务器上的路径,你需要核实路径并替换 "/???/???/php" 文本框里的真实路径。
添加下面两行到你的CronTab 文件:
[url=]# REDCap Cron Job (runs every minute)
[/url]
* * * * * /???/???/php /www/wwwroot/地址/redcap/cron.php > /dev/null
在浏览器中触发REDCap的计划任务
如果你不能在web服务器上设立REDCap的cron作业,通过您的Web浏览器你也可以很容易地触发调度作业。要使用Web浏览器触发调度作业,请前往 http://地址/redcap/cron.php
我在点击上述浏览器连接后发现cronjob运转正常,但是会在2小时后再次失效,继续提示如下:
错误:计划任务未运行
你的REDCap似乎没有设置计划任务或者没有按恰当的运行周期运行。请参阅控制中心里的计划任务页面进行细节设置。此计划任务相当重要并且必须常规运行在一个指定周期以保证后台任务被执行。
转至计划任务页面
不知道大家对这个设置有什么解决办法?
|