如何通过CRON运行CodeIgniter文件?
2022-08-31 00:31:09
我过去尝试过以下方法:
<?php
set_time_limit(0);
$_SERVER['PATH_INFO'] = 'cron/controller/index';
$_SERVER['REQUEST_URI'] = 'cron/controller/index';
require_once('index.php');
?>
并将其放在 codeigniter 安装目录中的文件中,将其称为 cron.php,然后通过以下方式调用它:
php /home/[username]/public_html/my_project/cron.php
如果我在浏览器中键入cron.php的URL,它可以完美地工作,但是每当它通过CRON运行时,我都会收到404错误。将以下代码放入CodeIgniter的函数中show_404()
function show_404($page = '')
{
print_r($_SERVER);
echo "\n\n";
die ($page);
}
导致通过电子邮件将以下输出发送给我:
Array
(
[SHELL] => /bin/sh
[MAILTO] => me@gmail.com
[USER] => [me]
[PATH] => /usr/bin:/bin
[PWD] => /home/[me]
[SHLVL] => 1
[HOME] => /home/[me]
[LOGNAME] => [me]
[_] => /usr/bin/php
[PHP_SELF] =>
[REQUEST_TIME] => 1266479641
[argv] => Array
(
[0] => /home/[me]/public_html/my_project/cron.php
)
[argc] => 1
[PATH_INFO] => cron/controller/index
[REQUEST_URI] => cron/controllers/index
)
home/[me]
在这里,我用[我]代替了我的实际用户名。
有什么想法吗?