如何在CodeIgniter上运行Cron作业

如何在CodeIgniter上运行Cron作业,codeigniter,cron,Codeigniter,Cron,我在CodeIgniter项目的application/controllers/admin目录中有一个名为cron.php的文件 据我所知,在cPanel的cron.php文件中执行“test”方法的正确cron命令是: /opt/php56/bin/php/home4/username/public_html/index.php cron test 但是,cron.php位于controllers文件夹中的admin文件夹中。这是否意味着我必须做一些事情,比如: /opt/php56/bin/

我在CodeIgniter项目的application/controllers/admin目录中有一个名为cron.php的文件

据我所知,在cPanel的cron.php文件中执行“test”方法的正确cron命令是:

/opt/php56/bin/php/home4/username/public_html/index.php cron test

但是,cron.php位于controllers文件夹中的admin文件夹中。这是否意味着我必须做一些事情,比如:

/opt/php56/bin/php/home4/username/public_html/index.php admin/cron test


我该怎么做呢?

使用php bin运行php脚本与您使用的框架无关。它只是一个要执行的脚本。 这意味着,要在cron中正确运行脚本,您需要为它提供绝对路径,而不管您的网站或您使用的框架如何。 因此,如果文件物理上位于/data/site/public_html/cron.php中,那么这就是您需要给cron的路径
如果您的cron将脚本作为url运行,那么您需要提供url,因为Codeigniter下的代码无法直接执行,因为我们在每个文件的顶部都没有direct access语句。 您可以按如下方式使用
****/usr/bin/curl

在这里检查我的答案:还有这个:希望它能为你指出正确的方向不,框架很重要;如果我试图在Codeigniter(Cron守护进程)15:53下直接访问php文件,那么会发生什么?不允许直接脚本访问