我有一个我想通过cron执行的函数。如果我只是点击网址www.example.com/TestProjects/codeigniter/controller/function
这个函数执行正常,如果我在cron上设置它不起作用。
我尝试将其设为
public_html/TestProjects/codeigniter/controller/function
并通过此类错误消息
public_html/TestProjects/codeigniter/controller/function: Not a directory
任何人都可以帮我解决如何在cron上设置这个问题吗?
答案 0 :(得分:2)
首先尝试在CLI模式下运行该控制器方法。 在控制台中,转到项目目录,然后以CLI模式运行脚本:
cd TestProjests/codeigniter
php index.php controller function
如果这样可行,请将同一行插入crontab,但使用绝对路径:
php /path_to_your_projects/TestProjests/codeigniter/index.php controller function
这也可以帮助您: https://ellislab.com/codeigniter/user-guide/general/cli.html
答案 1 :(得分:2)
** hi dude try this **
答案 2 :(得分:1)
路径public_html/TestProject/...
几乎肯定是来自用户目录的相对路径。你可以在你的cron中使用wget
来点击网址:
* * * * * wget http://www.example.com/cronscript > /dev/null
改变上面的时间让它尽可能多地运行
答案 3 :(得分:-1)
在执行空格后使用系统路径到文件名和函数名,它应如下所示:
php /var/www/path/to/controller/classFile functionName